Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 419c434c authored by Yang Shi's avatar Yang Shi Committed by Jens Axboe
Browse files

Fix DMA access of block device in 64-bit kernel on some non-x86 systems with...


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: default avatarYang Shi <yang.shi@windriver.com>
Signed-off-by: default avatarJens Axboe <jens.axboe@oracle.com>
parent e3790c7d
Loading
Loading
Loading
Loading
+1 −1
Original line number Original line Diff line number Diff line
@@ -140,7 +140,7 @@ void blk_queue_bounce_limit(struct request_queue *q, u64 dma_addr)
	/* Assume anything <= 4GB can be handled by IOMMU.
	/* Assume anything <= 4GB can be handled by IOMMU.
	   Actually some IOMMUs can handle everything, but I don't
	   Actually some IOMMUs can handle everything, but I don't
	   know of a way to test this here. */
	   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;
		dma = 1;
	q->bounce_pfn = max_low_pfn;
	q->bounce_pfn = max_low_pfn;
#else
#else