fs/sysv: Don't round down address for kunmap_flush_on_unmap()
authorFabio M. De Francesco <fmdefrancesco@gmail.com>
Mon, 6 Mar 2023 12:51:50 +0000 (13:51 +0100)
committerAl Viro <viro@zeniv.linux.org.uk>
Mon, 13 Mar 2023 00:03:34 +0000 (20:03 -0400)
The kernel virtual address passed to kunmap_flush_on_unmap() has no more
any need to be rounded down.

Therefore, delete the rounding down of "page_addr" when passed to
kunmap_local() in dir_put_page().

Don't backport without commit 88d7b12068b9 ("highmem: round down the
address passed to kunmap_flush_on_unmap()").

Cc: Ira Weiny <ira.weiny@intel.com>
Suggested-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Fabio M. De Francesco <fmdefrancesco@gmail.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
fs/sysv/dir.c

index 999bceb999742804f3b8cb3b5ededa5ffa724ea5..e2d26eb78af70af8fa21f63d9b49d227a00e34d5 100644 (file)
@@ -30,7 +30,7 @@ const struct file_operations sysv_dir_operations = {
 
 inline void dir_put_page(struct page *page, void *page_addr)
 {
-       kunmap_local((void *)((unsigned long)page_addr & PAGE_MASK));
+       kunmap_local(page_addr);
        put_page(page);
 }