public inbox for linux-mm@kvack.org
 help / color / mirror / Atom feed
From: "Gary Guo" <gary@garyguo.net>
To: "Andrew Lunn" <andrew@lunn.ch>,
	"Miguel Ojeda" <miguel.ojeda.sandonis@gmail.com>
Cc: "Miguel Ojeda" <ojeda@kernel.org>, <a.hindborg@kernel.org>,
	<acourbot@nvidia.com>, <akpm@linux-foundation.org>,
	<aliceryhl@google.com>, <anton.ivanov@cambridgegreys.com>,
	<bjorn3_gh@protonmail.com>, <boqun.feng@gmail.com>,
	<dakr@kernel.org>, <david@davidgow.net>, <gary@garyguo.net>,
	<johannes@sipsolutions.net>, <justinstitt@google.com>,
	<linux-arm-kernel@lists.infradead.org>,
	<linux-kbuild@vger.kernel.org>, <linux-kernel@vger.kernel.org>,
	<linux-mm@kvack.org>, <linux-um@lists.infradead.org>,
	<linux@armlinux.org.uk>, <llvm@lists.linux.dev>,
	<lossin@kernel.org>, <mark.rutland@arm.com>, <mmaurer@google.com>,
	<morbo@google.com>, <nathan@kernel.org>,
	<nick.desaulniers+lkml@gmail.com>, <nicolas.schier@linux.dev>,
	<nsc@kernel.org>, <peterz@infradead.org>, <richard@nod.at>,
	<rust-for-linux@vger.kernel.org>, <tmgross@umich.edu>,
	<urezki@gmail.com>, <will@kernel.org>
Subject: Re: [PATCH v2 0/3] Inline helpers into Rust without full LTO
Date: Mon, 23 Mar 2026 13:13:14 +0000	[thread overview]
Message-ID: <DHA6SE9EMEQF.1PKVHEG18I5FS@garyguo.net> (raw)
In-Reply-To: <65336ad0-ac37-416f-b6ae-e691e3e375ae@lunn.ch>

On Mon Mar 23, 2026 at 12:54 PM GMT, Andrew Lunn wrote:
> On Mon, Mar 23, 2026 at 04:24:59AM +0100, Miguel Ojeda wrote:
>> On Mon, Mar 23, 2026 at 4:04 AM Andrew Lunn <andrew@lunn.ch> wrote:
>> >
>> > 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?
>> 
>> That is not the case. The `depends on` is not about putting them on
>> abstractions, but on this experimental build feature, which is gated
>> on `EXPERT` to begin with, because it uses a fairly exotic approach
>> involving LLVM bitcode, which carries potential pitfalls, like the
>> mismatches on the target string like one of the commit messages
>> mentions, and possibly others.
>
> I'm not sure i follow this.
>
> Maybe i should ask a different question.
>
> You said:
>
>> we
>> may want to start simple with x86_64 and arm64 or similar first.
>
> The current proposed code for netlink needs this feature, because it
> needs access to inline C functions. Is the implication, following a
> chain of dependencies, that netlink would only build on x86_64 and
> arm64?
>
> If you want netlink on um, arm32, riscv, loongarch you would need a
> different implementation of the binding?

It doesn't need this feature to build and function. It'll just be a bit slower
because inlining from C to Rust won't happen.

>
> And a completely different question. Are there other work in progress
> solutions to allow the use of inline C functions? For networking, in
> particularly MAC and protocol code, anything which needs to access a
> struct sk_buf, a solution to this problem will be required. Do you see
> this "fairly exotic approach" as just a sort term bridge until some
> other "boring approach" is ready?

The actually inlining itself is not exotic, it's exactly same as LTO, just in
smaller scale. Although, the way we do it is probably somewhat uncommon due all
the constraints that the kernel has (mostly due to loadable modules, so we
cannot perform a global LTO and thus need custom handling of LLVM bitcode).

Best,
Gary


  reply	other threads:[~2026-03-23 13:13 UTC|newest]

Thread overview: 40+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-02-03 11:34 [PATCH v2 0/3] Inline helpers into Rust without full LTO Alice Ryhl
2026-02-03 11:34 ` [PATCH v2 1/3] kbuild: rust: add `CONFIG_RUSTC_CLANG_LLVM_COMPATIBLE` Alice Ryhl
2026-02-03 11:49   ` Will Deacon
2026-02-03 12:02     ` Alice Ryhl
2026-03-05 10:12   ` Nicolas Schier
2026-03-05 10:51     ` Alice Ryhl
2026-03-14  0:26   ` Nathan Chancellor
2026-02-03 11:34 ` [PATCH v2 2/3] rust: helpers: #define __rust_helper Alice Ryhl
2026-03-14  0:28   ` Nathan Chancellor
2026-02-03 11:34 ` [PATCH v2 3/3] build: rust: provide an option to inline C helpers into Rust Alice Ryhl
2026-03-06 17:32   ` Alice Ryhl
2026-03-14  0:40     ` Nathan Chancellor
2026-03-14 11:22       ` Alice Ryhl
2026-03-16 21:34         ` Nathan Chancellor
2026-03-17  8:02           ` Miguel Ojeda
2026-03-14  0:34   ` Nathan Chancellor
2026-03-17  8:25 ` [PATCH v2 0/3] Inline helpers into Rust without full LTO Andreas Hindborg
2026-03-22 19:21 ` Miguel Ojeda
2026-03-22 19:38   ` Miguel Ojeda
2026-03-23 13:54     ` Mark Brown
2026-03-23 14:53       ` Miguel Ojeda
2026-03-22 19:46   ` Miguel Ojeda
2026-03-23  8:49     ` Marek Szyprowski
2026-03-25  1:58       ` Miguel Ojeda
2026-03-23  0:03   ` Miguel Ojeda
2026-03-23  3:04     ` Andrew Lunn
2026-03-23  3:24       ` Miguel Ojeda
2026-03-23 12:54         ` Andrew Lunn
2026-03-23 13:13           ` Gary Guo [this message]
2026-03-23 13:28             ` Andrew Lunn
2026-03-23 13:34               ` Miguel Ojeda
2026-03-23 14:39               ` Alice Ryhl
2026-03-23 13:14           ` Miguel Ojeda
2026-03-23 10:03     ` Russell King (Oracle)
2026-03-23 13:26       ` Miguel Ojeda
2026-03-26 10:10       ` Alice Ryhl
2026-03-26 13:47         ` Miguel Ojeda
2026-03-26 14:31           ` Christian Schrefl
2026-03-26  2:42   ` Nathan Chancellor
2026-03-26  5:34   ` David Gow

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=DHA6SE9EMEQF.1PKVHEG18I5FS@garyguo.net \
    --to=gary@garyguo.net \
    --cc=a.hindborg@kernel.org \
    --cc=acourbot@nvidia.com \
    --cc=akpm@linux-foundation.org \
    --cc=aliceryhl@google.com \
    --cc=andrew@lunn.ch \
    --cc=anton.ivanov@cambridgegreys.com \
    --cc=bjorn3_gh@protonmail.com \
    --cc=boqun.feng@gmail.com \
    --cc=dakr@kernel.org \
    --cc=david@davidgow.net \
    --cc=johannes@sipsolutions.net \
    --cc=justinstitt@google.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kbuild@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=linux-um@lists.infradead.org \
    --cc=linux@armlinux.org.uk \
    --cc=llvm@lists.linux.dev \
    --cc=lossin@kernel.org \
    --cc=mark.rutland@arm.com \
    --cc=miguel.ojeda.sandonis@gmail.com \
    --cc=mmaurer@google.com \
    --cc=morbo@google.com \
    --cc=nathan@kernel.org \
    --cc=nick.desaulniers+lkml@gmail.com \
    --cc=nicolas.schier@linux.dev \
    --cc=nsc@kernel.org \
    --cc=ojeda@kernel.org \
    --cc=peterz@infradead.org \
    --cc=richard@nod.at \
    --cc=rust-for-linux@vger.kernel.org \
    --cc=tmgross@umich.edu \
    --cc=urezki@gmail.com \
    --cc=will@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox