]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
kunit/fortify: Fix mismatched kvalloc()/vfree() usage
authorKees Cook <keescook@chromium.org>
Thu, 25 Apr 2024 23:06:22 +0000 (16:06 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 30 May 2024 07:49:02 +0000 (09:49 +0200)
[ Upstream commit 998b18072ceb0613629c256b409f4d299829c7ec ]

The kv*() family of tests were accidentally freeing with vfree() instead
of kvfree(). Use kvfree() instead.

Fixes: 9124a2640148 ("kunit/fortify: Validate __alloc_size attribute results")
Link: https://lore.kernel.org/r/20240425230619.work.299-kees@kernel.org
Signed-off-by: Kees Cook <keescook@chromium.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
lib/fortify_kunit.c

index 2e4fedc816210cc2da5e346b08edaf8417bedb80..7830a9e64ead76201ffaca5b78acc65a94155eb2 100644 (file)
@@ -229,28 +229,28 @@ DEFINE_ALLOC_SIZE_TEST_PAIR(vmalloc)
                                                                        \
        checker((expected_pages) * PAGE_SIZE,                           \
                kvmalloc((alloc_pages) * PAGE_SIZE, gfp),               \
-               vfree(p));                                              \
+               kvfree(p));                                             \
        checker((expected_pages) * PAGE_SIZE,                           \
                kvmalloc_node((alloc_pages) * PAGE_SIZE, gfp, NUMA_NO_NODE), \
-               vfree(p));                                              \
+               kvfree(p));                                             \
        checker((expected_pages) * PAGE_SIZE,                           \
                kvzalloc((alloc_pages) * PAGE_SIZE, gfp),               \
-               vfree(p));                                              \
+               kvfree(p));                                             \
        checker((expected_pages) * PAGE_SIZE,                           \
                kvzalloc_node((alloc_pages) * PAGE_SIZE, gfp, NUMA_NO_NODE), \
-               vfree(p));                                              \
+               kvfree(p));                                             \
        checker((expected_pages) * PAGE_SIZE,                           \
                kvcalloc(1, (alloc_pages) * PAGE_SIZE, gfp),            \
-               vfree(p));                                              \
+               kvfree(p));                                             \
        checker((expected_pages) * PAGE_SIZE,                           \
                kvcalloc((alloc_pages) * PAGE_SIZE, 1, gfp),            \
-               vfree(p));                                              \
+               kvfree(p));                                             \
        checker((expected_pages) * PAGE_SIZE,                           \
                kvmalloc_array(1, (alloc_pages) * PAGE_SIZE, gfp),      \
-               vfree(p));                                              \
+               kvfree(p));                                             \
        checker((expected_pages) * PAGE_SIZE,                           \
                kvmalloc_array((alloc_pages) * PAGE_SIZE, 1, gfp),      \
-               vfree(p));                                              \
+               kvfree(p));                                             \
                                                                        \
        prev_size = (expected_pages) * PAGE_SIZE;                       \
        orig = kvmalloc(prev_size, gfp);                                \