On Fri, 2014-09-05 at 15:13 -0600, Bjorn Helgaas wrote: > I assume we would just get 0xffffffff if something went wrong, wouldn't we? It's HW, better safe than sorry. 0xffffffff is the normal case of "the device isn't talking to you anymore" but all the other cases handled in my patch are all illegal and might catch buggy/broken devices (which can be useful if you are just developing such a device in an FPGA for example). > If it's possible to get arbitrary bad data, there's no end to the error > checking we could add when reading config space. Yeah, though not all of them result in mapping bad addresses ... in this case the checks are pretty easy and it's not a performance sensitive path, so while I was initially only checking for ff's I though "screw it, may as well sanitiy check it all) :-) > If we can add a minimal check for the value we get if the device has been > removed or isolated, I'd rather do that than try to validate every field in > the register. An error message along the lines of "config read returned > 0xffffffff" or "can't access device" is probably easier to debug than > "MSI-X points to non-existing BAR 255" anway. Ok. Ben. -- 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