> > If the only option is to panic then something's busted. If it's network IO > then there should be a way of dropping the frame. If it's disk IO then we > should report the failure and cause an IO error.
An block IO error is basically catastrophic for the system too. There isn't really a concept of "temporary IO error that will resolve itself" concept in Unix. There are still lots of users of pci_map_single() that don't check the return value unfortunately. That is mostly in old drivers; it is generally picked on in reviews now. But then there is no guarantee that these rarely used likely untested error handling paths actually work. The alternative is writing out random junk which is somewhat risky. We fixed over time all the pci_map_sg()s at least to do the checks correctly. When I wrote the IOMMU code originally this wasn't the case and it destroyed several file systems of test systems due to IOMMU leaks in drivers (writing junk over the super block when the IOMMU is full doesn't make mount happy after the next reboot) Because of these experiences I'm more inclined towards the panic option, although x86-64 defaults to not panic these days. It would be really much better if sleeping was allowed, but it is hard. -Andi - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/