Skip to content

Commit 953b79a

Browse files
Matthew Wilcox (Oracle)aalexandrovich
authored andcommitted
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>
1 parent 1465615 commit 953b79a

1 file changed

Lines changed: 0 additions & 11 deletions

File tree

fs/ntfs3/frecord.c

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -2407,9 +2407,6 @@ int ni_read_frame(struct ntfs_inode *ni, u64 frame_vbo, struct page **pages,
24072407
* To simplify decompress algorithm do vmap for source
24082408
* and target pages.
24092409
*/
2410-
for (i = 0; i < pages_per_frame; i++)
2411-
kmap(pages[i]);
2412-
24132410
frame_size = pages_per_frame << PAGE_SHIFT;
24142411
frame_mem = vmap(pages, pages_per_frame, VM_MAP, PAGE_KERNEL);
24152412
if (!frame_mem) {
@@ -2655,7 +2652,6 @@ int ni_read_frame(struct ntfs_inode *ni, u64 frame_vbo, struct page **pages,
26552652
out:
26562653
for (i = 0; i < pages_per_frame; i++) {
26572654
pg = pages[i];
2658-
kunmap(pg);
26592655
SetPageUptodate(pg);
26602656
}
26612657

@@ -2742,9 +2738,6 @@ int ni_write_frame(struct ntfs_inode *ni, struct page **pages,
27422738
goto out1;
27432739
}
27442740

2745-
for (i = 0; i < pages_per_frame; i++)
2746-
kmap(pages[i]);
2747-
27482741
/* Map in-memory frame for read-only. */
27492742
frame_mem = vmap(pages, pages_per_frame, VM_MAP, PAGE_KERNEL_RO);
27502743
if (!frame_mem) {
@@ -2810,11 +2803,7 @@ int ni_write_frame(struct ntfs_inode *ni, struct page **pages,
28102803

28112804
out3:
28122805
vunmap(frame_mem);
2813-
28142806
out2:
2815-
for (i = 0; i < pages_per_frame; i++)
2816-
kunmap(pages[i]);
2817-
28182807
vunmap(frame_ondisk);
28192808
out1:
28202809
for (i = 0; i < pages_per_frame; i++) {

0 commit comments

Comments
 (0)