On Tue, Sep 27, 2022 at 03:14:35PM +0200, Miguel Ojeda wrote: > Rust symbols can become quite long due to namespacing introduced > by modules, types, traits, generics, etc. > > Increasing to 255 is not enough in some cases, therefore > introduce longer lengths to the symbol table. > > In order to avoid increasing all lengths to 2 bytes (since most > of them are small, including many Rust ones), use ULEB128 to > keep smaller symbols in 1 byte, with the rest in 2 bytes. > > Reviewed-by: Kees Cook <keescook@xxxxxxxxxxxx> > Co-developed-by: Alex Gaynor <alex.gaynor@xxxxxxxxx> > Signed-off-by: Alex Gaynor <alex.gaynor@xxxxxxxxx> > Co-developed-by: Wedson Almeida Filho <wedsonaf@xxxxxxxxxx> > Signed-off-by: Wedson Almeida Filho <wedsonaf@xxxxxxxxxx> > Co-developed-by: Gary Guo <gary@xxxxxxxxxxx> > Signed-off-by: Gary Guo <gary@xxxxxxxxxxx> > Co-developed-by: Boqun Feng <boqun.feng@xxxxxxxxx> > Signed-off-by: Boqun Feng <boqun.feng@xxxxxxxxx> > Co-developed-by: Matthew Wilcox <willy@xxxxxxxxxxxxx> > Signed-off-by: Matthew Wilcox <willy@xxxxxxxxxxxxx> > Signed-off-by: Miguel Ojeda <ojeda@xxxxxxxxxx> > --- > kernel/kallsyms.c | 26 ++++++++++++++++++++++---- > scripts/kallsyms.c | 29 ++++++++++++++++++++++++++--- > 2 files changed, 48 insertions(+), 7 deletions(-) Reviewed-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>