summaryrefslogtreecommitdiff
path: root/fs/ntfs3
diff options
context:
space:
mode:
authorMatthew Wilcox (Oracle) <willy@infradead.org>2025-07-18 20:53:57 +0100
committerKonstantin Komarov <almaz.alexandrovich@paragon-software.com>2025-10-17 16:45:35 +0200
commit953b79a7a124c3dae86544cea581a5bc7655aa13 (patch)
tree0d4b839dae66668d206869edca4f5a0578cce9b9 /fs/ntfs3
parent14656154d26cf244d063477a03606775eec19780 (diff)
ntfs: Do not kmap page cache pages for compression
These pages are accessed through vmap; they are not accessed by calling page_address(), so they do not need to be kmapped. Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org> Signed-off-by: Konstantin Komarov <almaz.alexandrovich@paragon-software.com>
Diffstat (limited to 'fs/ntfs3')
-rw-r--r--fs/ntfs3/frecord.c11
1 files changed, 0 insertions, 11 deletions
diff --git a/fs/ntfs3/frecord.c b/fs/ntfs3/frecord.c
index 784291ae04e6..e1832b66718f 100644
--- a/fs/ntfs3/frecord.c
+++ b/fs/ntfs3/frecord.c
@@ -2407,9 +2407,6 @@ int ni_read_frame(struct ntfs_inode *ni, u64 frame_vbo, struct page **pages,
* To simplify decompress algorithm do vmap for source
* and target pages.
*/
- for (i = 0; i < pages_per_frame; i++)
- kmap(pages[i]);
-
frame_size = pages_per_frame << PAGE_SHIFT;
frame_mem = vmap(pages, pages_per_frame, VM_MAP, PAGE_KERNEL);
if (!frame_mem) {
@@ -2655,7 +2652,6 @@ out1:
out:
for (i = 0; i < pages_per_frame; i++) {
pg = pages[i];
- kunmap(pg);
SetPageUptodate(pg);
}
@@ -2742,9 +2738,6 @@ int ni_write_frame(struct ntfs_inode *ni, struct page **pages,
goto out1;
}
- for (i = 0; i < pages_per_frame; i++)
- kmap(pages[i]);
-
/* Map in-memory frame for read-only. */
frame_mem = vmap(pages, pages_per_frame, VM_MAP, PAGE_KERNEL_RO);
if (!frame_mem) {
@@ -2810,11 +2803,7 @@ int ni_write_frame(struct ntfs_inode *ni, struct page **pages,
out3:
vunmap(frame_mem);
-
out2:
- for (i = 0; i < pages_per_frame; i++)
- kunmap(pages[i]);
-
vunmap(frame_ondisk);
out1:
for (i = 0; i < pages_per_frame; i++) {