On 2016-08-24 04:39, Thomas Gleixner wrote: > On Thu, 18 Aug 2016, Bjorn Helgaas wrote: >> I looked up the spec: PCI (not PCIe) r3.0, sec 3.2.2.3.4, says: >> >> A single-function device may optionally respond to all function >> numbers as the same function or may ... respond only to function 0 >> and not respond to the other function numbers. >> >> I'm concerned that a single-function device that responds to all >> function numbers might break with this patch. >> >> [multi-function devices] are also required to always implement >> function 0 in the device. >> >> Here's the reason we can advance by 8 in the "Go find them" loop. >> >> If a single function device is detected (i.e., bit 7 in the Header >> Type register of function 0 is 0), no more functions for that Device >> Number will be checked. If a multi-function device is detected >> (i.e., bit 7 in the Header Type register of function 0 is 1), then >> all remaining Function Numbers will be checked. >> >> This patch does the opposite of what the first sentence recommends. > > Fair enough. We'll need to find a way to deal with that in jailhouse then. Wouldn't it also be an option to have this fine-grained scanning only activated if we detect to run over Jailhouse (which we have to anyway)? Such code hasn't been proposed for upstream yet, but we will eventually. Jan -- Siemens AG, Corporate Technology, CT RDA ITP SES-DE Corporate Competence Center Embedded Linux -- 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