From: Christoph Hellwig <hch-jcswGhMUV9g@public.gmane.org>
To: iommu-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org,
linux-arch-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
linux-block-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
linux-ide-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
linux-scsi-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
netdev-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Cc: linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Subject: [PATCH 08/12] mmc: reduce use of block bounce buffers
Date: Mon, 16 Apr 2018 10:50:28 +0200 [thread overview]
Message-ID: <20180416085032.7367-9-hch@lst.de> (raw)
In-Reply-To: <20180416085032.7367-1-hch-jcswGhMUV9g@public.gmane.org>
We can rely on the dma-mapping code to handle any DMA limits that is
bigger than the ISA DMA mask for us (either using an iommu or swiotlb),
so remove setting the block layer bounce limit for anything but bouncing
for highmem pages.
Signed-off-by: Christoph Hellwig <hch-jcswGhMUV9g@public.gmane.org>
---
drivers/mmc/core/queue.c | 7 ++-----
1 file changed, 2 insertions(+), 5 deletions(-)
diff --git a/drivers/mmc/core/queue.c b/drivers/mmc/core/queue.c
index 56e9a803db21..60a02a763d01 100644
--- a/drivers/mmc/core/queue.c
+++ b/drivers/mmc/core/queue.c
@@ -351,17 +351,14 @@ static const struct blk_mq_ops mmc_mq_ops = {
static void mmc_setup_queue(struct mmc_queue *mq, struct mmc_card *card)
{
struct mmc_host *host = card->host;
- u64 limit = BLK_BOUNCE_HIGH;
-
- if (mmc_dev(host)->dma_mask && *mmc_dev(host)->dma_mask)
- limit = (u64)dma_max_pfn(mmc_dev(host)) << PAGE_SHIFT;
blk_queue_flag_set(QUEUE_FLAG_NONROT, mq->queue);
blk_queue_flag_clear(QUEUE_FLAG_ADD_RANDOM, mq->queue);
if (mmc_can_erase(card))
mmc_queue_setup_discard(mq->queue, card);
- blk_queue_bounce_limit(mq->queue, limit);
+ if (!mmc_dev(host)->dma_mask || !mmc_dev(host)->dma_mask)
+ blk_queue_bounce_limit(mq->queue, BLK_BOUNCE_HIGH);
blk_queue_max_hw_sectors(mq->queue,
min(host->max_blk_count, host->max_req_size / 512));
blk_queue_max_segments(mq->queue, host->max_segs);
--
2.17.0
next prev parent reply other threads:[~2018-04-16 8:50 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-04-16 8:50 remove PCI_DMA_BUS_IS_PHYS Christoph Hellwig
[not found] ` <20180416085032.7367-1-hch-jcswGhMUV9g@public.gmane.org>
2018-04-16 8:50 ` [PATCH 01/12] iscsi_tcp: don't set a bounce limit Christoph Hellwig
[not found] ` <20180416085032.7367-2-hch-jcswGhMUV9g@public.gmane.org>
2018-04-19 4:29 ` Martin K. Petersen
2018-04-16 8:50 ` [PATCH 02/12] storsvc: " Christoph Hellwig
[not found] ` <20180416085032.7367-3-hch-jcswGhMUV9g@public.gmane.org>
2018-04-19 4:29 ` Martin K. Petersen
2018-04-16 8:50 ` [PATCH 03/12] mtip32xx: don't use block layer bounce buffers Christoph Hellwig
2018-04-16 8:50 ` [PATCH 04/12] DAC960: " Christoph Hellwig
2018-04-16 8:50 ` [PATCH 05/12] sata_nv: " Christoph Hellwig
2018-04-16 8:50 ` [PATCH 06/12] memstick: don't call blk_queue_bounce_limit Christoph Hellwig
2018-04-16 8:50 ` [PATCH 07/12] scsi: reduce use of block bounce buffers Christoph Hellwig
2018-04-16 8:50 ` Christoph Hellwig [this message]
[not found] ` <20180416085032.7367-9-hch-jcswGhMUV9g@public.gmane.org>
2018-04-16 10:51 ` [PATCH 08/12] mmc: " Robin Murphy
2018-04-16 8:50 ` [PATCH 09/12] ide: kill ide_toggle_bounce Christoph Hellwig
2018-04-16 8:50 ` [PATCH 10/12] ide: remove the PCI_DMA_BUS_IS_PHYS check Christoph Hellwig
2018-04-16 8:50 ` [PATCH 11/12] net: remove the PCI_DMA_BUS_IS_PHYS check in illegal_highdma Christoph Hellwig
2018-04-16 8:50 ` [PATCH 12/12] PCI: remove PCI_DMA_BUS_IS_PHYS Christoph Hellwig
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20180416085032.7367-9-hch@lst.de \
--to=hch-jcswghmuv9g@public.gmane.org \
--cc=iommu-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org \
--cc=linux-arch-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=linux-block-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=linux-ide-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=linux-scsi-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=netdev-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).