problem with blk_queue_bounce_limit()

From: David Mosberger (davidm@napali.hpl.hp.com)
Date: Thu Jun 05 2003 - 01:42:16 EST


On platforms with I/O MMU hardware, memory above 4GB, and IDE hard disks,
this check:

                BUG_ON(dma_addr < BLK_BOUNCE_ISA);

causes an instant panic. The reason is quite obvious: since there is
an I/O MMU, BLK_BOUNCE_ISA is effectively unlimited, and most IDE
controllers can of course DMA only to <4GB.

So, the check is wrong. I think the proper way to fix this is to pass
a "struct dev" into the routine and then to use dma_supported() to
check whether bounce buffers will be needed. Do you agree? If so,
can you fix it?

Thanks,

        --david
-
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/



This archive was generated by hypermail 2b29 : Sat Jun 07 2003 - 22:00:26 EST