Re: Re: [PATCH v2 0/3] Inline helpers into Rust without full LTO

From: Andrew Lunn

Date: Sun Mar 22 2026 - 23:05:22 EST


On Mon, Mar 23, 2026 at 01:03:27AM +0100, Miguel Ojeda wrote:
> On Sun, 22 Mar 2026 20:21:59 +0100 Miguel Ojeda <ojeda@xxxxxxxxxx> wrote:
> >
> > On the other hand, regardless of whether we fix this (and another
> > issue in a separate email found thanks to the UML build), we could
> > instead add `depends on` listing explicitly the architectures where
> > this is going to be actually tested. That way maintainers can decide
> > whether they want to support it when they are ready. Thoughts?
>
> Another one for arm 32-bit:
>
> LD .tmp_vmlinux1
> ld.lld: error: undefined symbol: __aeabi_read_tp
> >>> referenced by uaccess.rs:349 (rust/kernel/uaccess.rs:349)
> >>> samples/rust/rust_misc_device.o:(<rust_misc_device::RustMiscDevice as kernel::miscdevice::MiscDevice>::ioctl) in archive vmlinux.a
> >>> referenced by uaccess.rs:543 (rust/kernel/uaccess.rs:543)
> >>> samples/rust/rust_misc_device.o:(<rust_misc_device::RustMiscDevice as kernel::miscdevice::MiscDevice>::ioctl) in archive vmlinux.a
> >>> referenced by uaccess.rs:543 (rust/kernel/uaccess.rs:543)
> >>> drivers/android/binder/rust_binder_main.o:(rust_binder_main::rust_binder_ioctl) in archive vmlinux.a
> >>> referenced 36 more times
>
> I think this reinforces the case that this is something that arch folks
> should think about case by case, and decide if they want to try -- we
> may want to start simple with x86_64 and arm64 or similar first.

But is this an architecture thing?

The netlink binding required this, because many of the netlink API
calls are implemented in inline function. However, netlink is
architecture independent.

Rust is already fragmented, because it does not support all
architectures. Do we really want to make it even more fragmented by
having some bindings only work on a subset of the subset of
architectures?

Andrew