From: Andi Kleen Date: Wed, 21 Jun 2006 12:48:09 +0000 (+0200) Subject: [BLOCK] Fix bounce limit address check X-Git-Tag: v2.6.18-rc1~1081^2~3 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=8269730b389d4793348d521140f9c76fb1828249;p=platform%2Fupstream%2Fkernel-adaptation-pc.git [BLOCK] Fix bounce limit address check Do a safer check for when to enable DMA. Currently we enable ISA DMA for cases that do not need it, resulting in OOM conditions when ZONE_DMA runs out of space. Signed-off-by: Jens Axboe --- diff --git a/block/ll_rw_blk.c b/block/ll_rw_blk.c index 2270bb4..0603ab2 100644 --- a/block/ll_rw_blk.c +++ b/block/ll_rw_blk.c @@ -638,7 +638,7 @@ void blk_queue_bounce_limit(request_queue_t *q, u64 dma_addr) /* 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 < (0xffffffff>>PAGE_SHIFT)) + if (bounce_pfn < (min_t(u64,0xffffffff,BLK_BOUNCE_HIGH) >> PAGE_SHIFT)) dma = 1; q->bounce_pfn = max_low_pfn; #else