Date: Sat, 12 Feb 2000 17:31:27 -0800
From: Richard Henderson <rth@twiddle.net>
> qlogic driver doesn't squirrel away the count of entries returned by
> pci_map_sg and when it comes time to free the list, often does too
> many entries and runs into some bogus ones, causing panics in pci_free_sg.
This probably isn't fully correct, but a similar change to the sym
driver appears to work under load. If it's wrong it's going to fail
on scsi errors, which I don't know how to force.
...
Thoughts on a better way to fix?
pci_{unmap,dma_sync}_sg should be passed the same "nents" which was
passed into pci_map_sg, not the one returned from the latter.
Fix the Alpha iommu code please :-) This mechanism was specifically
chosen such that the scsi drivers did not have to keep track of this
secondary dma 'nents' value. Thanks.
Later,
David S. Miller
davem@redhat.com
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/
This archive was generated by hypermail 2b29 : Tue Feb 15 2000 - 21:00:24 EST