On Wed, 2011-10-05 at 12:08 -0500, Jon Mason wrote: > On Wed, Oct 5, 2011 at 11:28 AM, Jesse Barnes <jbarnes@xxxxxxxxxxxxxxxx> wrote: > > On Tue, 4 Oct 2011 22:50:50 -0500 > > Jon Mason <jdmason@xxxxxxxx> wrote: > > > >> On Tue, Oct 04, 2011 at 08:54:19PM +0100, Ben Hutchings wrote: > >> > Using legacy interrupts and TLPs > 256 bytes on the SFC4000 (all > >> > revisions) may cause interrupt messages to be replayed. In some > >> > systems this results in a non-recoverable MCE. Early boards using the > >> > SFC4000 set the maximum payload size supported (MPSS) to 1024 bytes > >> > and we should override that. > >> > > >> > There are probably other devices with similar issues, so give this > >> > quirk a generic name. > >> > > >> > >> Looks good to me. If my MPS mess hasn't pissed off Linus > >> sufficiently, you might try and get this into 3.1. > >> > >> Acked-by: Jon Mason <mason@xxxxxxxx> > > > > Just to confirm: this only occurs when you switch over to "performance" > > mode and not by default, right? > > It could hit this in "safe" mode as well. But since MPS configuration > is disabled by default in 3.1-rc9, it shouldn't be possible to hit > this unless a boot arg is passed. In at least one of the systems where we saw this problem, the BIOS would set both MPS and MRRS to 512 bytes. In that case we actually *want* Linux to reconfigure the device. I haven't yet re-tested in the specific models where we saw this problem. (For reference, these were IBM x3455, HP DL145 G3 and Dell PowerEdge 6950, all with the Serverworks HT2100 chipset.) I just checked in a random test machine that pcie_bus_configure_set() started with the quirked value of MPSS. Ben. -- Ben Hutchings, Staff Engineer, Solarflare Not speaking for my employer; that's the marketing department's job. They asked us to note that Solarflare product names are trademarked. -- To unsubscribe from this list: send the line "unsubscribe linux-pci" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html