]> Gentwo Git Trees - linux/.git/commit
riscv: Fix memory leak in module_frob_arch_sections()
authorMiaoqian Lin <linmq006@gmail.com>
Mon, 27 Oct 2025 17:40:44 +0000 (11:40 -0600)
committerPaul Walmsley <pjw@kernel.org>
Mon, 27 Oct 2025 17:40:44 +0000 (11:40 -0600)
commitc42458fcf54b3d0bc2ac06667c98dceb43831889
tree15de099d8b867ad1689fbd6fd25deaa238fa4f9a
parenta74f038fa50e0d33b740f44f862fe856f16de6a8
riscv: Fix memory leak in module_frob_arch_sections()

The current code directly overwrites the scratch pointer with the
return value of kvrealloc(). If kvrealloc() fails and returns NULL,
the original buffer becomes unreachable, causing a memory leak.

Fix this by using a temporary variable to store kvrealloc()'s return
value and only update the scratch pointer on success.

Found via static anlaysis and this is similar to commit 42378a9ca553
("bpf, verifier: Fix memory leak in array reallocation for stack state")

Fixes: be17c0df6795 ("riscv: module: Optimize PLT/GOT entry counting")
Cc: stable@vger.kernel.org
Signed-off-by: Miaoqian Lin <linmq006@gmail.com>
Link: https://lore.kernel.org/r/20251026091912.39727-1-linmq006@gmail.com
Signed-off-by: Paul Walmsley <pjw@kernel.org>
arch/riscv/kernel/module-sections.c