rust: optimize rust symbol generation for SeqFile
PATCH 1/1 rust: optimize rust symbol generation for SeqFile
From: Kunwu Chan <[email protected]>
When build the kernel using the llvm-18.1.3-rust-1.85.0-x86_64 with ARCH=arm64, the following symbols are generated:
$nm vmlinux | grep ' _R'.*SeqFile | rustfilt ffff8000805b78ac T <kernel::seq_file::SeqFile>::call_printf
This Rust symbol is trivial wrappers around the C functions seq_printf. It doesn't make sense to go through a trivial wrapper for its functions, so mark it inline.
After doing so, the above symbol will not in output.
Signed-off-by Kunwu Chan <[email protected]>
Co-developed-by Grace Deng <[email protected]>
Signed-off-by Grace Deng <[email protected]>
--- rust/kernel/seq_file.rs | 1 + 1 file changed, 1 insertion(+)
rust/kernel/seq_file.rs +1 -0
@@ -30,6 +30,7 @@ pub unsafe fn from_raw<'a>(ptr: *mut bindings::seq_file) -> &'a SeqFile { }/// Used by the [`seq_print`] macro. +#[inline] pub fn call_printf (&self, args: core::fmt::Arguments <'_>) {// SAFETY: Passing a void pointer to `Arguments` is valid for `%pA`. unsafe {
Signature · 1 line
2.43.0