linux/rust/kernel
Panagiotis Foliadis 0a41f5af19 rust: task: Mark Task methods inline
When building the kernel using the llvm-18.1.3-rust-1.85.0-x86_64
toolchain provided by kernel.org, the following symbols are generated:

$ nm vmlinux | grep ' _R'.*Task | rustfilt
... T <kernel::task::Task>::get_pid_ns
... T <kernel::task::Task>::tgid_nr_ns
... T <kernel::task::Task>::current_pid_ns
... T <kernel::task::Task>::signal_pending
... T <kernel::task::Task>::uid
... T <kernel::task::Task>::euid
... T <kernel::task::Task>::current
... T <kernel::task::Task>::wake_up
... T <kernel::task::Task as kernel::types::AlwaysRefCounted>::dec_ref
... T <kernel::task::Task as kernel::types::AlwaysRefCounted>::inc_ref

These Rust symbols are trivial wrappers around the C functions. It
doesn't make sense to go through a trivial wrapper for these functions,
so mark them inline.

[boqun: Capitalize the title, reword a bit to avoid listing all the C
functions as the code already shows them and remove the addresses of the
symbols in the commit log as they are different from build to build.]

Link: https://github.com/Rust-for-Linux/linux/issues/1145
Reviewed-by: Benno Lossin <benno.lossin@proton.me>
Reviewed-by: Christian Schrefl <chrisi.schrefl@gmail.com>
Reviewed-by: Charalampos Mitrodimas <charmitro@posteo.net>
Reviewed-by: Alice Ryhl <aliceryhl@google.com>
Signed-off-by: Panagiotis Foliadis <pfoliadis@posteo.net>
Signed-off-by: Boqun Feng <boqun.feng@gmail.com>
Link: https://lore.kernel.org/r/20250315-inline-c-wrappers-v3-1-048e43fcef7d@posteo.net
2025-06-24 10:23:48 -07:00
..
alloc rust: alloc: add missing Markdown code span 2025-05-25 22:58:35 +02:00
block rust: convert raw URLs to Markdown autolinks in comments 2025-05-12 00:20:25 +02:00
drm Rust changes for v6.16 2025-06-04 21:18:37 -07:00
fs rust: file: improve safety comments 2025-05-30 07:12:05 +02:00
list rust: list: Fix typo much in arc.rs 2025-05-29 23:35:44 +02:00
mm mm: rust: make CONFIG_MMU ifdefs more narrow 2025-05-31 22:46:12 -07:00
net net: phy: pass PHY driver to .match_phy_device OP 2025-05-21 15:56:09 -07:00
sync rust: sync: Mark PollCondVar::drop() inline 2025-06-24 10:23:48 -07:00
time rust: workaround bindgen issue with forward references to enum types 2025-05-22 15:39:16 +02:00
.gitignore rust: jump_label: skip formatting generated file 2024-11-20 13:32:42 -05:00
alloc.rs rust: alloc: add missing Markdown code spans 2025-05-25 22:58:35 +02:00
auxiliary.rs Rust changes for v6.16 2025-06-04 21:18:37 -07:00
block.rs
build_assert.rs rust: add build_error! to the prelude 2025-01-10 00:19:09 +01:00
clk.rs rust: clk: Add initial abstractions 2025-05-19 12:55:40 +05:30
configfs.rs Rust changes for v6.16 2025-06-04 21:18:37 -07:00
cpu.rs rust: cpu: Add from_cpu() 2025-05-20 10:04:06 +05:30
cpufreq.rs Rust changes for v6.16 2025-06-04 21:18:37 -07:00
cpumask.rs rust: cpumask: Add initial abstractions 2025-05-19 12:55:40 +05:30
cred.rs cred,rust: mark Credential methods inline 2025-03-04 17:07:49 -05:00
device_id.rs rust: use absolute paths in macros referencing core and kernel 2025-05-23 00:12:14 +02:00
device.rs Rust changes for v6.16 2025-06-04 21:18:37 -07:00
devres.rs rust: devres: fix doctest build under !CONFIG_PCI 2025-05-12 09:35:44 +02:00
dma.rs Rust changes for v6.16 2025-06-04 21:18:37 -07:00
driver.rs rust: make pin-init its own crate 2025-03-16 21:59:19 +01:00
error.rs Rust changes for v6.15 2025-03-30 17:03:26 -07:00
faux.rs rust/kernel/faux: mark Registration methods inline 2025-03-11 10:42:23 +01:00
firmware.rs rust: firmware: Use ffi::c_char type in FwFunc 2025-04-14 14:13:23 +02:00
fs.rs rust: file: add Rust abstraction for struct file 2024-09-30 13:02:28 +02:00
generated_arch_static_branch_asm.rs.S rust: jump_label: skip formatting generated file 2024-11-20 13:32:42 -05:00
init.rs Rust changes for v6.15 2025-03-30 17:03:26 -07:00
io.rs rust: io: rename io::Io accessors 2025-02-22 15:44:19 +01:00
ioctl.rs rust: start using the #[expect(...)] attribute 2024-10-07 21:39:57 +02:00
jump_label.rs rust: jump_label: skip formatting generated file 2024-11-20 13:32:42 -05:00
kunit.rs rust: add kunit_tests to the prelude 2025-05-27 20:09:59 +02:00
lib.rs Rust changes for v6.16 2025-06-04 21:18:37 -07:00
list.rs rust: list: Add examples for linked list 2025-05-22 12:00:52 +02:00
miscdevice.rs Char/Misc/IIO pull request for 6.16-rc1 2025-06-06 11:50:47 -07:00
mm.rs mm: rust: make CONFIG_MMU ifdefs more narrow 2025-05-31 22:46:12 -07:00
net.rs
of.rs rust: of: add of::DeviceId abstraction 2024-12-20 17:21:04 +01:00
opp.rs rust: opp: Move cfg(CONFIG_OF) attribute to the top of doc test 2025-05-27 15:29:17 +02:00
page.rs rust: page: optimize rust symbol generation for Page 2025-05-12 00:20:25 +02:00
pci.rs Rust changes for v6.16 2025-06-04 21:18:37 -07:00
pid_namespace.rs rust: add PidNamespace 2024-10-08 15:44:36 +02:00
platform.rs Rust changes for v6.16 2025-06-04 21:18:37 -07:00
prelude.rs rust: add kunit_tests to the prelude 2025-05-27 20:09:59 +02:00
print.rs rust: replace rustdoc references to alloc::format 2025-05-12 00:20:25 +02:00
rbtree.rs rust: retain pointer mut-ness in container_of! 2025-05-28 18:54:09 +02:00
revocable.rs rust: revocable: implement Revocable::access() 2025-05-04 17:43:45 +02:00
security.rs lsm,rust: reword "destroy" -> "release" in SecurityCtx 2025-03-04 15:44:46 -05:00
seq_file.rs Rust changes for v6.15 2025-03-30 17:03:26 -07:00
sizes.rs
static_assert.rs rust: use absolute paths in macros referencing core and kernel 2025-05-23 00:12:14 +02:00
std_vendor.rs rust: convert raw URLs to Markdown autolinks in comments 2025-05-12 00:20:25 +02:00
str.rs rust: str: take advantage of the -> Result support in KUnit #[test]'s 2025-05-27 20:09:59 +02:00
sync.rs Rust changes for v6.15 2025-03-30 17:03:26 -07:00
task.rs rust: task: Mark Task methods inline 2025-06-24 10:23:48 -07:00
time.rs rust: time: Introduce Instant type 2025-04-29 15:31:07 +02:00
tracepoint.rs rust: add tracepoint support 2024-11-04 16:21:44 -05:00
transmute.rs rust: kernel: move FromBytes and AsBytes traits to a new transmute module 2024-10-10 00:33:42 +02:00
types.rs Rust changes for v6.16 2025-06-04 21:18:37 -07:00
uaccess.rs Alloc changes for v6.16 2025-05-18 20:56:03 +02:00
workqueue.rs rust: workqueue: remove HasWork::OFFSET 2025-05-29 01:34:52 +02:00
xarray.rs rust: xarray: Add an abstraction for XArray 2025-05-01 11:37:59 +02:00