All of lore.kernel.org
 help / color / mirror / Atom feed
From: Boqun Feng <boqun@kernel.org>
To: Danilo Krummrich <dakr@kernel.org>
Cc: "Gary Guo" <gary@garyguo.net>,
	"Joel Fernandes" <joelagnelf@nvidia.com>,
	linux-kernel@vger.kernel.org, "Miguel Ojeda" <ojeda@kernel.org>,
	"Björn Roy Baron" <bjorn3_gh@protonmail.com>,
	"Benno Lossin" <lossin@kernel.org>,
	"Andreas Hindborg" <a.hindborg@kernel.org>,
	"Alice Ryhl" <aliceryhl@google.com>,
	"Trevor Gross" <tmgross@umich.edu>,
	"Alexandre Courbot" <acourbot@nvidia.com>,
	"Dave Airlie" <airlied@redhat.com>,
	"Daniel Almeida" <daniel.almeida@collabora.com>,
	"Koen Koning" <koen.koning@linux.intel.com>,
	dri-devel@lists.freedesktop.org, nouveau@lists.freedesktop.org,
	rust-for-linux@vger.kernel.org,
	"Nikola Djukic" <ndjukic@nvidia.com>
Subject: Re: [PATCH v10 5/8] rust: clist: Add support to interface with C linked lists
Date: Wed, 25 Feb 2026 11:48:39 -0800	[thread overview]
Message-ID: <aZ9SF5ql6OCdaFi8@tardis.local> (raw)
In-Reply-To: <DGJXYEXCYIII.Z6FOAA8YYMAZ@kernel.org>

On Fri, Feb 20, 2026 at 05:48:37PM +0100, Danilo Krummrich wrote:
> On Fri Feb 20, 2026 at 2:09 AM CET, Gary Guo wrote:
> > On 2026-02-19 16:24, Danilo Krummrich wrote:
> >> I feel like it makes a bit more sense to have an entry for the entire class of
> >> "RUST [FFI]" infrastructure.
> >
> > I don't think so. Most of the kernel crate is doing FFI. We have a `ffi` crate
> > defining FFI types, we have `CStr`/`CString` which in Rust std is inside `std::ffi`,
> > etc.
> 
> The idea is not that everything that somehow has an FFI interface falls under
> this category, as this would indeed be the majority.
> 
> The idea is rather everything that is specifically designed as a helper to
> implement FFI interactions. (Given that maybe just "RUST [FFI HELPER]"?)
> 

I feel like you may want to call it "interop" then, because it's "Rust
doing something with interoperation on C data structure". If I
understand you correctly, the category you referred here is the area
that we could not simply call an FFI function to get the functionality
from C side, but rather we need to make sure that we are interpret C
data structure correctly to work with C side.

Regards,
Boqun

> For instance, this would also apply to Opaque and ForeignOwnable. But also CStr
> and CString, as you say.
> 
> But there's also lots of stuff that does not fall under this category, such as
> pin-init, alloc, syn, num, bits (genmask), fmt, slice, revocable, list, ptr, assert,
> print, arc, etc.
> 
> There are also things that are more on the "partially" side of things, such as
> transmute, error or aref.
> 
> > I feel that the FFI infra is the core responsibility of the top-level Rust entry,
> > while specific stuff can be splitted out.
> 
> I think the core responsibilities are compiler and general design topics, such
> as abstraction design, (safety) documentation, etc., as well as core language
> infrastructure, such as pin-init, syn, alloc, arc, etc.
> 
> Given the definition "helper to implement FFI interactions" I feel like we have
> much more infrastructure that is not for this specific purpose.

  parent reply	other threads:[~2026-02-25 19:48 UTC|newest]

Thread overview: 90+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-02-18 20:54 [PATCH v10 0/8] Preparatory patches for nova-core memory management Joel Fernandes
2026-02-18 20:54 ` [PATCH v10 1/8] gpu: Move DRM buddy allocator one level up (part one) Joel Fernandes
2026-02-18 20:55 ` [PATCH v10 2/8] gpu: Move DRM buddy allocator one level up (part two) Joel Fernandes
2026-02-19  3:18   ` Alexandre Courbot
2026-02-19  3:18     ` Alexandre Courbot
2026-02-19 15:31     ` Joel Fernandes
2026-02-18 20:55 ` [PATCH v10 3/8] gpu: Fix uninitialized buddy for built-in drivers Joel Fernandes
2026-02-19 10:09   ` Danilo Krummrich
2026-02-19 10:09     ` Danilo Krummrich
2026-02-19 15:31     ` Joel Fernandes
2026-02-19 16:24       ` Joel Fernandes
2026-02-18 20:55 ` [PATCH v10 4/8] rust: ffi: Convert pub use to pub mod and create ffi module Joel Fernandes
2026-02-19  3:18   ` Alexandre Courbot
2026-02-18 20:55 ` [PATCH v10 5/8] rust: clist: Add support to interface with C linked lists Joel Fernandes
2026-02-19  4:26   ` Alexandre Courbot
2026-02-19 15:27     ` Joel Fernandes
2026-02-19 15:27       ` Joel Fernandes
2026-02-19  9:58   ` Danilo Krummrich
2026-02-19 15:28     ` Joel Fernandes
2026-02-19 15:28       ` Joel Fernandes
2026-02-19 11:21   ` Danilo Krummrich
2026-02-19 14:37     ` Gary Guo
2026-02-19 15:27     ` Joel Fernandes
2026-02-19 15:27       ` Joel Fernandes
2026-02-19 15:44       ` Joel Fernandes
2026-02-19 16:24         ` Danilo Krummrich
2026-02-19 18:07           ` Joel Fernandes
2026-02-19 18:38             ` Miguel Ojeda
2026-02-19 19:28               ` Joel Fernandes
2026-02-19 22:55                 ` Miguel Ojeda
2026-02-20  4:00                   ` Joel Fernandes
2026-02-20  1:56             ` Alexandre Courbot
2026-02-20  1:09           ` Gary Guo
2026-02-20  1:19             ` Miguel Ojeda
2026-02-20 16:48             ` Danilo Krummrich
2026-02-23  0:54               ` Joel Fernandes
2026-02-24 16:15                 ` Miguel Ojeda
2026-02-24 16:15                   ` Miguel Ojeda
2026-02-25 19:48               ` Boqun Feng [this message]
2026-02-25 20:20                 ` Joel Fernandes
2026-02-26  0:32                   ` Joel Fernandes
2026-02-20  8:16   ` Eliot Courtney
2026-02-20  8:16     ` Eliot Courtney
2026-02-23  1:13     ` Joel Fernandes
2026-02-24  2:08       ` Eliot Courtney
2026-02-24  2:08         ` Eliot Courtney
2026-02-24  7:28       ` Alice Ryhl
2026-02-24 16:00         ` Joel Fernandes
2026-02-24 16:11           ` Miguel Ojeda
2026-02-21  8:59   ` Alice Ryhl
2026-02-23  0:41     ` Joel Fernandes
2026-02-23  9:38       ` Alice Ryhl
2026-02-24  0:32         ` Joel Fernandes
2026-02-18 20:55 ` [PATCH v10 6/8] rust: gpu: Add GPU buddy allocator bindings Joel Fernandes
2026-02-19  5:13   ` Alexandre Courbot
2026-02-19  8:54     ` Miguel Ojeda
2026-02-19 15:31       ` Joel Fernandes
2026-03-01 13:23         ` Gary Guo
2026-03-01 13:23           ` Gary Guo
2026-03-01 17:53           ` Miguel Ojeda
2026-02-19 15:31     ` Joel Fernandes
2026-02-20  1:56       ` Alexandre Courbot
2026-02-20  1:56         ` Alexandre Courbot
2026-02-23  1:02         ` Joel Fernandes
2026-02-19 13:18   ` Danilo Krummrich
2026-02-19 15:31     ` Joel Fernandes
2026-02-20  8:22   ` Eliot Courtney
2026-02-20  8:22     ` Eliot Courtney
2026-02-20 14:54     ` Joel Fernandes
2026-02-20 15:50       ` Joel Fernandes
2026-02-20 15:53       ` Danilo Krummrich
2026-02-20 21:20         ` Joel Fernandes
2026-02-20 23:43           ` Danilo Krummrich
2026-02-23  0:34             ` Joel Fernandes
2026-02-18 20:55 ` [PATCH v10 7/8] nova-core: mm: Select GPU_BUDDY for VRAM allocation Joel Fernandes
2026-02-19  0:44   ` Alexandre Courbot
2026-02-19  0:44     ` Alexandre Courbot
2026-02-19  1:14     ` John Hubbard
2026-02-19  1:14       ` John Hubbard
2026-02-19 15:31       ` Joel Fernandes
2026-02-19  2:06     ` Joel Fernandes
2026-02-19  2:06       ` Joel Fernandes
2026-02-19 15:31     ` Joel Fernandes
2026-02-19 15:31       ` Joel Fernandes
2026-02-18 20:55 ` [PATCH v10 8/8] nova-core: Kconfig: Sort select statements alphabetically Joel Fernandes
2026-02-18 20:59 ` [PATCH v10 0/8] Preparatory patches for nova-core memory management Joel Fernandes
2026-02-18 20:59   ` Joel Fernandes
2026-02-18 22:24 ` Danilo Krummrich
2026-02-18 23:46   ` Joel Fernandes
2026-02-18 23:59     ` Joel Fernandes

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=aZ9SF5ql6OCdaFi8@tardis.local \
    --to=boqun@kernel.org \
    --cc=a.hindborg@kernel.org \
    --cc=acourbot@nvidia.com \
    --cc=airlied@redhat.com \
    --cc=aliceryhl@google.com \
    --cc=bjorn3_gh@protonmail.com \
    --cc=dakr@kernel.org \
    --cc=daniel.almeida@collabora.com \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=gary@garyguo.net \
    --cc=joelagnelf@nvidia.com \
    --cc=koen.koning@linux.intel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=lossin@kernel.org \
    --cc=ndjukic@nvidia.com \
    --cc=nouveau@lists.freedesktop.org \
    --cc=ojeda@kernel.org \
    --cc=rust-for-linux@vger.kernel.org \
    --cc=tmgross@umich.edu \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.