Messages in this thread |  | | Date | Fri, 11 Apr 2025 08:50:54 +0200 | | From | Peter Zijlstra <> | | Subject | Re: [PATCH] scripts/mksysmap: skip objtool __pfx_ symbols |
| |
On Tue, Apr 08, 2025 at 06:58:49PM -0700, Josh Poimboeuf wrote: > On Fri, Mar 28, 2025 at 11:48:19AM +0100, Arnd Bergmann wrote: > > From: Arnd Bergmann <arnd@arndb.de> > > > > The recently added testcase for overly long symbols triggers when > > CONFIG_FUNCTION_PADDING_CFI is set: > > > > Symbol __pfx_snnnng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nnng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nnnng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nnng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nnnnng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nnng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nnnng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nnng1h2i3j4k5l6m7ng1h2i3j4k5l6m7nng1h2i3j4k5l6m7ng1h2i3j4k5l6m7n too long for kallsyms (517 >= 512). > > Please increase KSYM_NAME_LEN both in kernel and kallsyms.c > > > > Change the mksymtab table so the prefixed symbols are not included > > in kallsyms. > > > > Fixes: c104c16073b7 ("Kunit to check the longest symbol length") > > Signed-off-by: Arnd Bergmann <arnd@arndb.de> > > I'm not sure we want to remove the __pfx_ symbols from kallsyms. There > can be actual code there. > > For example, FineIBT writes code in the __pfx area which can trigger an > #UD. And we'd want a sane backtrace for that.
On top of that, clang kcfi builds do a similar thing, they will generate __cfi_ prefixed symbols.
And yes, those symbols exist for a reason, there is code there under various circumstances and backtraces look really weird without these symbols on -- notably the code in the prefix will be attributed to whatever symbol comes before, most confusing.
So yeah, don't remove these symbols, and fix the kunit test.
|  |