On Mon, 2006-02-06 at 01:46 -0800, David S. Miller wrote: > That's a bug, frankly. Sparc64 doesn't need to do anything like > that. Spamming the page pointers is really really bogus and I'm > surprised this doesn't make more stuff explode. > > It was never the intention to allow the DMA mapping support code > to modify the page, offset, and length members of the scatterlist. > Only the DMA components. > > I'd really prefer that those assignments get fixed and an explicit > note added to Documentation/DMA-mapping.txt about this. > > It's rediculious that these generic subsystem drivers need to > know about this. :) I complained about this x86_64 behaviour ages ago. Andi claimed it was the only way they could get there merging algorithm to work. It actually triggered a bug in SCSI because in-flight I/O that was rejected gets unmapped and then remapped (which was, originally, not working). They finally fixed it by making the unmap put back the original scatterlist. Perhaps this should go to linux-arch just in case anyone else copied x86_64? James - : send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html