---
title: "Lang/RfL meeting 2024-08-14"
tags: ["T-lang", "design-meeting", "minutes"]
date: 2024-08-14
discussion: https://rust-lang.zulipchat.com/#narrow/stream/410673-t-lang.2Fmeetings/topic/RfL.20meeting.202024-08-14
url: https://hackmd.io/_amBgv2fRzu3BCJLgV60Ug
---
# Discussion
People: TC, Josh, Miguel, Alice Ryhl, Boqun Feng, Gary Guo, Xiang, Andreas Hindborg, Xiang Fei Ding
https://rust-lang.github.io/rust-project-goals/2024h2/rfl_stable.html
https://github.com/nikomatsakis/rfcs/blob/rfl-project-goal/text/0000-rust-for-linux-project-goal-2024h2.md#ownership-and-other-resources
## Standards for use of unsafe Rust in the kernel
https://lwn.net/Articles/982868/
https://lwn.net/SubscriberLink/982868/9b14c5cc83b4d631/
RalfJ might be interested in this. We'll send that to him. In general, there seems some overlap here with the goals of broader UCG work in Rust.
## `A-rust-for-linux` label
Changed from `I-rust-for-linux` (https://github.com/rust-lang/rust/issues/128831#issuecomment-2276464487).
## Arbitrary self types v2
Seems this is moving forward slowly but surely.
## Derive smart pointer
Have a PR queued to be merged here:
https://github.com/rust-lang/rust/pull/128925
We probably want to test it out for linked lists in RfL.
We may still need to bikeshed the name.
We'll file an issue so we remember to bikeshed the name sooner rather than later:
https://github.com/rust-lang/rust/issues/129104
The kernel now is unpinned since a few weeks ago (since v6.11), supporting versions since Rust 1.78.0, thus developers should be able to use nightlies without issue, though it may be harder for Android.
## asm_goto
Original patch series: https://lore.kernel.org/rust-for-linux/20240628-tracepoint-v4-1-353d523a9c15@google.com/
Newest version:
https://lore.kernel.org/rust-for-linux/20240808-tracepoint-v6-0-a23f800f1189@google.com/
Alice: Then we were asked to not duplicate the assembly. So we use the C preprocessor to expand a C macro into a Rust macro call by cutting the processed output:
```c
#include <linux/jump_label.h>
// Cut here.
::kernel::concat_literals!(ARCH_STATIC_BRANCH_ASM({0}, {1}, {2} + {3}))
```
Gary Guo: On asm_goto, I'm still planning to write a design document here.
Alice: We're also using `asm_const`. We have a feature request:
https://github.com/rust-lang/rust/issues/128464
Josh: I've now nominated that.
TC: For the original `asm_const`, we decided via FCP to stabilize this on the tracking:
https://github.com/rust-lang/rust/issues/93332
And then it was stabilized in this PR, targeted for Rust 1.82:
https://github.com/rust-lang/rust/pull/128570
## Extended offset_of syntax
We're looking at extending it here, but RfL doesn't need this one yet:
https://github.com/rust-lang/rust/issues/120141
In Rust 1.82, we'll have a stabilization of `offset_of_nested`:
https://github.com/rust-lang/rust/pull/128284
Alice: Everything we need is being stabilized.
## Pointers to static in constants
https://github.com/rust-lang/rust/issues/128183
This one may make Rust 1.83.
## GCC-only (or single backend) compiler features
Discussion at https://github.com/rust-lang/rust/issues/128831#issuecomment-2276464487.
## Sanitizers supported only when another flag is passed
https://github.com/rust-lang/rust/pull/128348
This PR can actually move forward since tmandry delegated it.
Xiang is finishing up some things here and will then merge it.
## Rust terminology in non-Rust Linux kernel patches
For people's interest; this seems like a notable positive cultural impact of Rust on the Linux kernel.
https://lore.kernel.org/linux-fsdevel/20240807-ostbahnhof-kaltfront-0f4476fd7587@brauner/T/