]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
lib/crypto: tests: Annotate worker to be on stack
authorGuenter Roeck <linux@roeck-us.net>
Mon, 21 Jul 2025 23:19:17 +0000 (16:19 -0700)
committerEric Biggers <ebiggers@kernel.org>
Tue, 22 Jul 2025 03:10:36 +0000 (20:10 -0700)
The following warning traceback is seen if object debugging is enabled
with the new crypto test code.

ODEBUG: object 9000000106237c50 is on stack 9000000106234000, but NOT annotated.
------------[ cut here ]------------
WARNING: lib/debugobjects.c:655 at lookup_object_or_alloc.part.0+0x19c/0x1f4, CPU#0: kunit_try_catch/468
...

This also results in a boot stall when running the code in qemu:loongarch.

Initializing the worker with INIT_WORK_ONSTACK() fixes the problem.

Fixes: 950a81224e8b ("lib/crypto: tests: Add hash-test-template.h and gen-hash-testvecs.py")
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
Acked-by: Ard Biesheuvel <ardb@kernel.org>
Link: https://lore.kernel.org/r/20250721231917.3182029-1-linux@roeck-us.net
Signed-off-by: Eric Biggers <ebiggers@kernel.org>
lib/crypto/tests/hash-test-template.h

index ffee1741a1b366514118b356dd92d18bdf60c553..f437a0a9ac6cd10a28ef6523c5d9e061408e10d5 100644 (file)
@@ -398,7 +398,7 @@ static void run_irq_test(struct kunit *test, bool (*func)(void *),
         */
        hrtimer_setup_on_stack(&state.timer, hash_irq_test_timer_func,
                               CLOCK_MONOTONIC, HRTIMER_MODE_REL_HARD);
-       INIT_WORK(&state.bh_work, hash_irq_test_bh_work_func);
+       INIT_WORK_ONSTACK(&state.bh_work, hash_irq_test_bh_work_func);
 
        /* Run for up to max_iterations or 1 second, whichever comes first. */
        end_jiffies = jiffies + HZ;