[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH RFC PKS/PMEM 43/58] drivers/mmc: Utilize new kmap_thread()



From: Ira Weiny <ira.weiny@xxxxxxxxx>

These kmap() calls are localized to a single thread.  To avoid the over
head of global PKRS updates use the new kmap_thread() call.

Cc: Ulf Hansson <ulf.hansson@xxxxxxxxxx>
Cc: Sascha Sommer <saschasommer@xxxxxxxxxx>
Signed-off-by: Ira Weiny <ira.weiny@xxxxxxxxx>
---
 drivers/mmc/host/mmc_spi.c    | 4 ++--
 drivers/mmc/host/sdricoh_cs.c | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/drivers/mmc/host/mmc_spi.c b/drivers/mmc/host/mmc_spi.c
index 18a850f37ddc..ab28e7103b8d 100644
--- a/drivers/mmc/host/mmc_spi.c
+++ b/drivers/mmc/host/mmc_spi.c
@@ -918,7 +918,7 @@ mmc_spi_data_do(struct mmc_spi_host *host, struct 
mmc_command *cmd,
                }
 
                /* allow pio too; we don't allow highmem */
-               kmap_addr = kmap(sg_page(sg));
+               kmap_addr = kmap_thread(sg_page(sg));
                if (direction == DMA_TO_DEVICE)
                        t->tx_buf = kmap_addr + sg->offset;
                else
@@ -950,7 +950,7 @@ mmc_spi_data_do(struct mmc_spi_host *host, struct 
mmc_command *cmd,
                /* discard mappings */
                if (direction == DMA_FROM_DEVICE)
                        flush_kernel_dcache_page(sg_page(sg));
-               kunmap(sg_page(sg));
+               kunmap_thread(sg_page(sg));
                if (dma_dev)
                        dma_unmap_page(dma_dev, dma_addr, PAGE_SIZE, dir);
 
diff --git a/drivers/mmc/host/sdricoh_cs.c b/drivers/mmc/host/sdricoh_cs.c
index 76a8cd3a186f..7806bc69c4f1 100644
--- a/drivers/mmc/host/sdricoh_cs.c
+++ b/drivers/mmc/host/sdricoh_cs.c
@@ -312,11 +312,11 @@ static void sdricoh_request(struct mmc_host *mmc, struct 
mmc_request *mrq)
                        int result;
                        page = sg_page(data->sg);
 
-                       buf = kmap(page) + data->sg->offset + (len * i);
+                       buf = kmap_thread(page) + data->sg->offset + (len * i);
                        result =
                                sdricoh_blockio(host,
                                        data->flags & MMC_DATA_READ, buf, len);
-                       kunmap(page);
+                       kunmap_thread(page);
                        flush_dcache_page(page);
                        if (result) {
                                dev_err(dev, "sdricoh_request: cmd %i "
-- 
2.28.0.rc0.12.gb6a658bd00c9




 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.