[PATCH] tomoyo: Use local kmap in tomoyo_dump_page()

Davidlohr Bueso posted 1 patch 2 months, 1 week ago
security/tomoyo/domain.c | 9 ++-------
1 file changed, 2 insertions(+), 7 deletions(-)
[PATCH] tomoyo: Use local kmap in tomoyo_dump_page()
Posted by Davidlohr Bueso 2 months, 1 week ago
Replace the now deprecated kmap_atomic() with kmap_local_page().

The memcpy does not need atomic semantics, and the removed comment
is now stale - this patch now makes it in sync again. Last but not
least, highmem is going to be removed[0].

[0] https://lore.kernel.org/all/4ff89b72-03ff-4447-9d21-dd6a5fe1550f@app.fastmail.com/

Signed-off-by: Davidlohr Bueso <dave@stgolabs.net>
---
 security/tomoyo/domain.c | 9 ++-------
 1 file changed, 2 insertions(+), 7 deletions(-)

diff --git a/security/tomoyo/domain.c b/security/tomoyo/domain.c
index 5f9ccab26e9a..90cf0e2969df 100644
--- a/security/tomoyo/domain.c
+++ b/security/tomoyo/domain.c
@@ -934,17 +934,12 @@ bool tomoyo_dump_page(struct linux_binprm *bprm, unsigned long pos,
 #endif
 	if (page != dump->page) {
 		const unsigned int offset = pos % PAGE_SIZE;
-		/*
-		 * Maybe kmap()/kunmap() should be used here.
-		 * But remove_arg_zero() uses kmap_atomic()/kunmap_atomic().
-		 * So do I.
-		 */
-		char *kaddr = kmap_atomic(page);
+		char *kaddr = kmap_local_page(page);
 
 		dump->page = page;
 		memcpy(dump->data + offset, kaddr + offset,
 		       PAGE_SIZE - offset);
-		kunmap_atomic(kaddr);
+		kunmap_local(kaddr);
 	}
 	/* Same with put_arg_page(page) in fs/exec.c */
 #ifdef CONFIG_MMU
-- 
2.39.5
Re: [PATCH] tomoyo: Use local kmap in tomoyo_dump_page()
Posted by Tetsuo Handa 2 months, 1 week ago
On 2025/11/29 7:27, Davidlohr Bueso wrote:
> Replace the now deprecated kmap_atomic() with kmap_local_page().
> 
> The memcpy does not need atomic semantics, and the removed comment
> is now stale - this patch now makes it in sync again. Last but not
> least, highmem is going to be removed[0].
> 
> [0] https://lore.kernel.org/all/4ff89b72-03ff-4447-9d21-dd6a5fe1550f@app.fastmail.com/
> 
> Signed-off-by: Davidlohr Bueso <dave@stgolabs.net>

Thank you. Applied.

https://sourceforge.net/p/tomoyo/tomoyo.git/ci/a9ea3a2e081d29350b7a3c0731729efbc70458b8/