kallsyms: support "big" kernel symbols
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: NKees Cook <keescook@chromium.org> Reviewed-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org> Co-developed-by: NAlex Gaynor <alex.gaynor@gmail.com> Signed-off-by: NAlex Gaynor <alex.gaynor@gmail.com> Co-developed-by: NWedson Almeida Filho <wedsonaf@google.com> Signed-off-by: NWedson Almeida Filho <wedsonaf@google.com> Co-developed-by: NGary Guo <gary@garyguo.net> Signed-off-by: NGary Guo <gary@garyguo.net> Co-developed-by: NBoqun Feng <boqun.feng@gmail.com> Signed-off-by: NBoqun Feng <boqun.feng@gmail.com> Co-developed-by: NMatthew Wilcox <willy@infradead.org> Signed-off-by: NMatthew Wilcox <willy@infradead.org> Signed-off-by: NMiguel Ojeda <ojeda@kernel.org>
Showing
想要评论请 注册 或 登录