Re: [PATCH] cfi: rust: pass -Zpatchable-function-entry on all architectures
From: Miguel Ojeda
Date: Thu Oct 10 2024 - 10:58:09 EST
On Thu, Oct 10, 2024 at 3:04 PM Peter Zijlstra <peterz@xxxxxxxxxxxxx> wrote:
>
> Also not rust-src, because for some reason you're not actually
> freestanding :/
It is there, but it is a suggested package, so I think you would need
e.g. `--install-suggests`:
https://packages.debian.org/trixie/rust-all
Regarding freestanding, we use `no_std`, which one could argue is
similar to C's freestanding. That is, we use `core`, which is a subset
of the full (hosted) standard library, just like C requires some
headers even in freestanding.
However, I think you mean not even using those
headers/sources/libraries, which is fair. Rust calls that `no_core`,
but it is currently impractical to use/maintain and there are a lot of
useful things in `core` we want to use anyway, such as the `Result`
type:
https://doc.rust-lang.org/core/
There are some things that we could remove, though, which is why I
asked long ago for ways to remove unneeded things for the kernel
("modularization of `core`"). We got `no_fp_fmt_parse`, implemented by
Gary back in 2021, and we could perhaps get more in the future if
really needed.
> Yeah, but then you have to first know that we have this file to begin
> with.
That is fair, but hard to fix. We try our best though: the "Rust"
entry is in the front page of the kernel docs already, and the first
paragraph of that page links to the "Quick Start" guide.
Cheers,
Miguel