Re: [Bugme-new] [Bug 7246] New: 3w-xxxx, IOMMU and >1go RAM

James Bottomley
2006-10-02T18:58:22Z

On Mon, 2006-10-02 at 20:35 +0200, Andi Kleen wrote:
> Yes, but it can't when the bounce code is not compiled in.
> In this case it just printks and you saw those printks.

That's this bit of subversion in ll_rw_blk.c:blk_queue_bounce_limit()

#if BITS_PER_LONG == 64
/* Assume anything <= 4GB can be handled by IOMMU.
Actually some IOMMUs can handle everything, but I don't
know of a way to test this here. */
if (bounce_pfn < (min_t(u64,0xffffffff,BLK_BOUNCE_HIGH) >> PAGE_SHIFT))
dma = 1;
q->bounce_pfn = max_low_pfn;
#else

?

That really looks wrong ... it will fail, as we've seen for 64 bit
platforms with no iommu. We should init the isa pool in that case.

James