Thread (2 messages) 2 messages, 2 authors, 2021-07-14

Re: [PATCH 02/17] kallsyms: increase maximum kernel symbol length to 512

From: Linus Torvalds <torvalds@linux-foundation.org>
Date: 2021-07-14 20:22:20
Also in: linux-doc, lkml, rust-for-linux

Possibly related (same subject, not in this thread)

On Wed, Jul 14, 2021 at 1:09 PM Eric W. Biederman [off-list ref] wrote:
Are you thinking the hashed kernel symbols need to have their types
included in the hash?
I think the hash should be the whole mangled name. So yes, for Rust
symbols they'd have the the type information.
 Or is this just a hash to make the names a managable size?
No, if that was the only point of it, the "just use two bytes for
length" would be simpler.

But I don't think we want to do run-time de-mangling of names in the
kernel when doing stack traces, which implies that the kallsym
information in the kernel should be the de-mangled names.

That makes the names nice and readable, and also makes this "maximum
symbol length" thing a non-issue.

BUT.

It also means that you can't use those names for linking purposes, so
you'd then need to have a "full version" for that. But as Willy
pointed out elsewhere, you might as well just use a constant-sized
hash for that, rather than have both a manged and a de-mangled name.

                   Linus
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help