Re: [PATCH 02/17] kallsyms: increase maximum kernel symbol length to 512
From: Linus Torvalds
Date: Wed Jul 14 2021 - 16:22:20 EST
On Wed, Jul 14, 2021 at 1:09 PM Eric W. Biederman <ebiederm@xxxxxxxxxxxx> 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