[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <f77d549c-b776-4182-b170-571d1e5bb288@p183>
Date: Thu, 20 Feb 2025 09:32:15 +0300
From: Alexey Dobriyan <adobriyan@...il.com>
To: "H. Peter Anvin" <hpa@...or.com>
Cc: Kees Cook <kees@...nel.org>,
Miguel Ojeda <miguel.ojeda.sandonis@...il.com>,
Christoph Hellwig <hch@...radead.org>,
rust-for-linux <rust-for-linux@...r.kernel.org>,
Linus Torvalds <torvalds@...ux-foundation.org>,
Greg KH <gregkh@...uxfoundation.org>,
David Airlie <airlied@...il.com>, linux-kernel@...r.kernel.org,
ksummit@...ts.linux.dev
Subject: Re: Rust kernel policy
On Wed, Feb 19, 2025 at 11:33:56AM -0800, H. Peter Anvin wrote:
> b. Can we use existing mature tools, such as C++, to *immediately* improve the quality (not just memory safety!) of our 37-year-old, 35-million line code base and allow for further centralized improvements without the major lag required for compiler extensions to be requested and implemented in gcc (and clang) *and* dealing with the maturity issue?
We can't and for technical reasons:
* g++ requires C99 initializers to be in declaration order,
even in cases where there is no reason to do so.
* g++ doesn't support __seg_gs at all:
$ echo -n -e 'int __seg_gs gs;' | g++ -xc++ - -S -o /dev/null
<stdin>:1:14: error: expected initializer before ‘gs’
x86 added this to improve codegen quality so this would be step backwards.
Powered by blists - more mailing lists