path: root/block/blk-settings.c
diff options
authorYang Shi <>2008-03-04 11:20:51 +0100
committerJens Axboe <>2008-03-04 11:20:51 +0100
commit419c434c35614609fd0c79d335c134bf4b88b30b (patch)
treec2e076f6d0c61051dac3184f9f1255db1c680902 /block/blk-settings.c
parente3790c7d42a545e8fe8b38b513613ca96687b670 (diff)
Fix DMA access of block device in 64-bit kernel on some non-x86 systems with 4GB or upper 4GB memory
For some non-x86 systems with 4GB or upper 4GB memory, we need increase the range of addresses that can be used for direct DMA in 64-bit kernel. Signed-off-by: Yang Shi <> Signed-off-by: Jens Axboe <>
Diffstat (limited to 'block/blk-settings.c')
1 files changed, 1 insertions, 1 deletions
diff --git a/block/blk-settings.c b/block/blk-settings.c
index a9f37f530b15..18fab5193d81 100644
--- a/block/blk-settings.c
+++ b/block/blk-settings.c
@@ -140,7 +140,7 @@ void blk_queue_bounce_limit(struct request_queue *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 (b_pfn < (min_t(u64, 0xffffffff, BLK_BOUNCE_HIGH) >> PAGE_SHIFT))
+ if (b_pfn <= (min_t(u64, 0xffffffff, BLK_BOUNCE_HIGH) >> PAGE_SHIFT))
dma = 1;
q->bounce_pfn = max_low_pfn;