![]() | |||||||||||||
Messages in this thread |
On Mon, May 21, 2001 at 12:05:20AM +1000, Andrew Morton wrote: > Andrea Arcangeli wrote: > > > > [ cc'ed to l-k ] > > > > > DMA-mapping.txt assumes that it cannot fail. > > > > DMA-mapping.txt is wrong. Both pci_map_sg and pci_map_single failed if > > they returned zero. You either have to drop the skb or to try again later > > if they returns zero. > > > > Well this is news to me. No drivers understand this. Yes, almost all drivers are buggy. > How long has this been the case? What platforms? Always and all platforms. Just think about this, you have 2^32 of bus address space, and you theoritically can start I/O for more than 2^32 of phys memory, see? Whatever platform it is it will never be able to guarantee all mappings to succeed. > For netdevices at least, the pci_map_single() call is always close > to the site of the skb allocation. So what we can do is to roll > them together and use the existing oom-handling associated with alloc_skb(), > assuming the driver has it... Fine. Andrea - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/ | ||||||||||||
| Last update: 2005-03-22 12:53 [from the cache] ©2003-2008 | |||||||||||||