um: Prevent KASAN splats in dump_stack()
authorVincent Whitchurch <vincent.whitchurch@axis.com>
Wed, 7 Sep 2022 10:05:33 +0000 (12:05 +0200)
committerRichard Weinberger <richard@nod.at>
Mon, 19 Sep 2022 20:58:48 +0000 (22:58 +0200)
Use READ_ONCE_NOCHECK() when reading the stack to prevent KASAN splats
when dump_stack() is used.

Fixes: 5b301409e8bc5d7fad ("UML: add support for KASAN under x86_64")
Signed-off-by: Vincent Whitchurch <vincent.whitchurch@axis.com>
Reviewed-by: Dmitry Vyukov <dvyukov@google.com>
Signed-off-by: Richard Weinberger <richard@nod.at>
arch/um/kernel/sysrq.c

index 7452f70..7467153 100644 (file)
@@ -48,7 +48,8 @@ void show_stack(struct task_struct *task, unsigned long *stack,
                        break;
                if (i && ((i % STACKSLOTS_PER_LINE) == 0))
                        pr_cont("\n");
-               pr_cont(" %08lx", *stack++);
+               pr_cont(" %08lx", READ_ONCE_NOCHECK(*stack));
+               stack++;
        }
 
        printk("%sCall Trace:\n", loglvl);