[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20250402074550.GQ5880@noisy.programming.kicks-ass.net>
Date: Wed, 2 Apr 2025 09:45:50 +0200
From: Peter Zijlstra <peterz@...radead.org>
To: Guenter Roeck <linux@...ck-us.net>
Cc: Alessandro Carminati <acarmina@...hat.com>,
linux-kselftest@...r.kernel.org, David Airlie <airlied@...il.com>,
Arnd Bergmann <arnd@...db.de>,
Maíra Canal <mcanal@...lia.com>,
Dan Carpenter <dan.carpenter@...aro.org>,
Kees Cook <keescook@...omium.org>,
Daniel Diaz <daniel.diaz@...aro.org>,
David Gow <davidgow@...gle.com>,
Arthur Grillo <arthurgrillo@...eup.net>,
Brendan Higgins <brendan.higgins@...ux.dev>,
Naresh Kamboju <naresh.kamboju@...aro.org>,
Maarten Lankhorst <maarten.lankhorst@...ux.intel.com>,
Andrew Morton <akpm@...ux-foundation.org>,
Maxime Ripard <mripard@...nel.org>,
Ville Syrjälä <ville.syrjala@...ux.intel.com>,
Daniel Vetter <daniel@...ll.ch>,
Thomas Zimmermann <tzimmermann@...e.de>,
Alessandro Carminati <alessandro.carminati@...il.com>,
Jani Nikula <jani.nikula@...el.com>,
dri-devel@...ts.freedesktop.org, kunit-dev@...glegroups.com,
linux-arch@...r.kernel.org, linux-arm-kernel@...ts.infradead.org,
linux-doc@...r.kernel.org, linux-kernel@...r.kernel.org,
linux-parisc@...r.kernel.org, linuxppc-dev@...ts.ozlabs.org,
linux-riscv@...ts.infradead.org, linux-s390@...r.kernel.org,
linux-sh@...r.kernel.org, loongarch@...ts.linux.dev, x86@...nel.org,
Linux Kernel Functional Testing <lkft@...aro.org>,
Thomas Gleixner <tglx@...utronix.de>,
Ingo Molnar <mingo@...hat.com>, Borislav Petkov <bp@...en8.de>,
Dave Hansen <dave.hansen@...ux.intel.com>
Subject: Re: [PATCH v4 06/14] x86: Add support for suppressing warning
backtraces
On Tue, Apr 01, 2025 at 10:53:46AM -0700, Guenter Roeck wrote:
> > > #define _BUG_FLAGS(ins, flags, extra) \
> > > do { \
> > > asm_inline volatile("1:\t" ins "\n" \
> > > ".pushsection __bug_table,\"aw\"\n" \
> > > "2:\t" __BUG_REL(1b) "\t# bug_entry::bug_addr\n" \
> > > "\t" __BUG_REL(%c0) "\t# bug_entry::file\n" \
> > > - "\t.word %c1" "\t# bug_entry::line\n" \
> > > - "\t.word %c2" "\t# bug_entry::flags\n" \
> > > - "\t.org 2b+%c3\n" \
> > > + "\t" __BUG_FUNC_PTR "\t# bug_entry::function\n" \
> > > + "\t.word %c2" "\t# bug_entry::line\n" \
> > > + "\t.word %c3" "\t# bug_entry::flags\n" \
> > > + "\t.org 2b+%c4\n" \
> > > ".popsection\n" \
> > > extra \
> > > - : : "i" (__FILE__), "i" (__LINE__), \
> > > + : : "i" (__FILE__), "i" (__BUG_FUNC), "i" (__LINE__),\
> > > "i" (flags), \
> > > "i" (sizeof(struct bug_entry))); \
> > > } while (0)
Also this, why do you need this extra function in the bug entry? Isn't
that trivial from the trap site itself? symbol information should be
able to get you the function from the trap ip.
None of this makes any sense.
Powered by blists - more mailing lists