[PATCH RFC PKS/PMEM 33/58] fs/cramfs: Utilize new kmap_thread()
ira.weiny at intel.com
ira.weiny at intel.com
Sat Oct 10 06:50:08 AEDT 2020
From: Ira Weiny <ira.weiny at intel.com>
The kmap() calls in this FS are localized to a single thread. To avoid
the over head of global PKRS updates use the new kmap_thread() call.
Cc: Nicolas Pitre <nico at fluxnic.net>
Signed-off-by: Ira Weiny <ira.weiny at intel.com>
---
fs/cramfs/inode.c | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/fs/cramfs/inode.c b/fs/cramfs/inode.c
index 912308600d39..003c014a42ed 100644
--- a/fs/cramfs/inode.c
+++ b/fs/cramfs/inode.c
@@ -247,8 +247,8 @@ static void *cramfs_blkdev_read(struct super_block *sb, unsigned int offset,
struct page *page = pages[i];
if (page) {
- memcpy(data, kmap(page), PAGE_SIZE);
- kunmap(page);
+ memcpy(data, kmap_thread(page), PAGE_SIZE);
+ kunmap_thread(page);
put_page(page);
} else
memset(data, 0, PAGE_SIZE);
@@ -826,7 +826,7 @@ static int cramfs_readpage(struct file *file, struct page *page)
maxblock = (inode->i_size + PAGE_SIZE - 1) >> PAGE_SHIFT;
bytes_filled = 0;
- pgdata = kmap(page);
+ pgdata = kmap_thread(page);
if (page->index < maxblock) {
struct super_block *sb = inode->i_sb;
@@ -914,13 +914,13 @@ static int cramfs_readpage(struct file *file, struct page *page)
memset(pgdata + bytes_filled, 0, PAGE_SIZE - bytes_filled);
flush_dcache_page(page);
- kunmap(page);
+ kunmap_thread(page);
SetPageUptodate(page);
unlock_page(page);
return 0;
err:
- kunmap(page);
+ kunmap_thread(page);
ClearPageUptodate(page);
SetPageError(page);
unlock_page(page);
--
2.28.0.rc0.12.gb6a658bd00c9
More information about the Linux-erofs
mailing list