On Wed, Oct 16, 2024 at 9:15 PM Linus Walleij linus.walleij@linaro.org wrote:
When sync:ing the VMALLOC area to other CPUs, make sure to also sync the KASAN shadow memory for the VMALLOC area, so that we don't get stale entries for the shadow memory in the top level PGD.
Since we are now copying PGDs in two instances, create a helper function named memcpy_pgd() to do the actual copying, and create a helper to map the addresses of VMALLOC_START and VMALLOC_END into the corresponding shadow memory.
Cc: stable@vger.kernel.org Fixes: 565cbaad83d8 ("ARM: 9202/1: kasan: support CONFIG_KASAN_VMALLOC") Link: https://lore.kernel.org/linux-arm-kernel/a1a1d062-f3a2-4d05-9836-3b098de9db6... Reported-by: Clement LE GOFFIC clement.legoffic@foss.st.com Suggested-by: Mark Rutland mark.rutland@arm.com Suggested-by: Russell King (Oracle) linux@armlinux.org.uk Signed-off-by: Linus Walleij linus.walleij@linaro.org
As it turns out in my confusion I have missed that the more or less identical patch with a different subject (talking about recursion) is already submitted by Melon Liu and waiting in the patch tracker: https://www.arm.linux.org.uk/developer/patches/viewpatch.php?id=9427/1
I've tested it and it solves the problem equally well.
I even reviewed that and didn't remember it...
I will submit patch 2/2 into the patch tracker and let Melon's patch deal with this issue.
Yours, Linus Walleij