[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CACRpkdZCtDvrWW6AL-sX71fY1_qa858+tCR9ke6pT5HPnA7mKg@mail.gmail.com>
Date: Thu, 11 Jan 2024 00:46:19 +0100
From: Linus Walleij <linus.walleij@...aro.org>
To: Kees Cook <keescook@...omium.org>
Cc: Russell King <linux@...linux.org.uk>, Mark Brown <broonie@...nel.org>,
Ard Biesheuvel <ardb@...nel.org>, Arnd Bergmann <arnd@...db.de>,
Vladimir Murzin <vladimir.murzin@....com>, Zhen Lei <thunder.leizhen@...wei.com>,
Keith Packard <keithpac@...zon.com>, Haibo Li <haibo.li@...iatek.com>,
linux-arm-kernel@...ts.infradead.org,
Matthias Brugger <matthias.bgg@...il.com>,
AngeloGioacchino Del Regno <angelogioacchino.delregno@...labora.com>,
Alexandre Mergnat <amergnat@...libre.com>, linux-kernel@...r.kernel.org,
linux-hardening@...r.kernel.org
Subject: Re: [PATCH] ARM: unwind: Add missing "Call trace:" line
On Wed, Jan 10, 2024 at 10:56 PM Kees Cook <keescook@...omium.org> wrote:
> Every other architecture in Linux includes the line "Call trace:" before
> backtraces. In some cases ARM would print "Backtrace:", but this was
> only via 1 specific call path, and wasn't included in CPU Oops nor things
> like KASAN, UBSAN, etc that called dump_stack(). Regularize this line
> so CI systems and other things (like LKDTM) that depend on parsing
> "Call trace:" out of dmesg will see it for ARM.
>
> Before this patch:
>
> UBSAN: array-index-out-of-bounds in ../drivers/misc/lkdtm/bugs.c:376:16
> index 8 is out of range for type 'char [8]'
> CPU: 0 PID: 1402 Comm: cat Not tainted 6.7.0-rc2 #1
> Hardware name: Generic DT based system
> dump_backtrace from show_stack+0x20/0x24
> r7:00000042 r6:00000000 r5:60070013 r4:80cf5d7c
> show_stack from dump_stack_lvl+0x88/0x98
> dump_stack_lvl from dump_stack+0x18/0x1c
> r7:00000042 r6:00000008 r5:00000008 r4:80fab118
> dump_stack from ubsan_epilogue+0x10/0x3c
> ubsan_epilogue from __ubsan_handle_out_of_bounds+0x80/0x84
> ...
>
> After this patch:
>
> UBSAN: array-index-out-of-bounds in ../drivers/misc/lkdtm/bugs.c:376:16
> index 8 is out of range for type 'char [8]'
> CPU: 0 PID: 1402 Comm: cat Not tainted 6.7.0-rc2 #1
> Hardware name: Generic DT based system
> Call trace:
> dump_backtrace from show_stack+0x20/0x24
> r7:00000042 r6:00000000 r5:60070013 r4:80cf5d7c
> show_stack from dump_stack_lvl+0x88/0x98
> dump_stack_lvl from dump_stack+0x18/0x1c
> r7:00000042 r6:00000008 r5:00000008 r4:80fab118
> dump_stack from ubsan_epilogue+0x10/0x3c
> ubsan_epilogue from __ubsan_handle_out_of_bounds+0x80/0x84
> ...
>
> Reported-by: Mark Brown <broonie@...nel.org>
> Cc: Russell King <linux@...linux.org.uk>
> Cc: Ard Biesheuvel <ardb@...nel.org>
> Cc: Arnd Bergmann <arnd@...db.de>
> Cc: Linus Walleij <linus.walleij@...aro.org>
> Cc: Vladimir Murzin <vladimir.murzin@....com>
> Cc: Zhen Lei <thunder.leizhen@...wei.com>
> Cc: Keith Packard <keithpac@...zon.com>
> Cc: Haibo Li <haibo.li@...iatek.com>
> Cc: linux-arm-kernel@...ts.infradead.org
> Signed-off-by: Kees Cook <keescook@...omium.org>
Makes sense.
Reviewed-by: Linus Walleij <linus.walleij@...aro.org>
Yours,
Linus Walleij
Powered by blists - more mailing lists