module: don't annotate ROX memory as kmemleak_not_leak()
The ROX memory allocations are part of a larger vmalloc allocation and annotating them with kmemleak_not_leak() confuses kmemleak. Skip kmemleak_not_leak() annotations for the ROX areas. Fixes:c287c07233("module: switch to execmem API for remapping as RW and restoring ROX") Fixes:64f6a4e10c("x86: re-enable EXECMEM_ROX support") Reported-by: "Borah, Chaitanya Kumar" <chaitanya.kumar.borah@intel.com> Signed-off-by: Mike Rapoport (Microsoft) <rppt@kernel.org> Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> Link: https://lkml.kernel.org/r/20250214084531.3299390-1-rppt@kernel.org
This commit is contained in:
committed by
Peter Zijlstra
parent
63887c9f02
commit
675204778c
@@ -1260,7 +1260,8 @@ static int module_memory_alloc(struct module *mod, enum mod_mem_type type)
|
||||
* *do* eventually get freed, but let's just keep things simple
|
||||
* and avoid *any* false positives.
|
||||
*/
|
||||
kmemleak_not_leak(ptr);
|
||||
if (!mod->mem[type].is_rox)
|
||||
kmemleak_not_leak(ptr);
|
||||
|
||||
memset(ptr, 0, size);
|
||||
mod->mem[type].base = ptr;
|
||||
|
||||
Reference in New Issue
Block a user