[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20251209090707.GV1712166@ZenIV>
Date: Tue, 9 Dec 2025 09:07:07 +0000
From: Al Viro <viro@...iv.linux.org.uk>
To: "H. Peter Anvin" <hpa@...or.com>
Cc: Linus Torvalds <torvalds@...ux-foundation.org>,
Eugenio Pérez <eperezma@...hat.com>,
Ilpo Järvinen <ilpo.jarvinen@...ux.intel.com>,
"Michael S. Tsirkin" <mst@...hat.com>,
Alexei Starovoitov <ast@...nel.org>,
Alexey Dobriyan <adobriyan@...il.com>,
Andrew Morton <akpm@...ux-foundation.org>,
Andrii Nakryiko <andrii@...nel.org>,
Arnd Bergmann <arnd@...nel.org>, Borislav Petkov <bp@...en8.de>,
Dan Williams <dan.j.williams@...el.com>,
Daniel Borkmann <daniel@...earbox.net>,
Dave Hansen <dave.hansen@...ux.intel.com>,
David Laight <David.Laight@...lab.com>,
David Lechner <dlechner@...libre.com>,
Dinh Nguyen <dinguyen@...nel.org>,
Eduard Zingerman <eddyz87@...il.com>,
Gatlin Newhouse <gatlin.newhouse@...il.com>,
Hao Luo <haoluo@...gle.com>, Ingo Molnar <mingo@...hat.com>,
Jakub Sitnicki <jakub@...udflare.com>,
Jan Hendrik Farr <kernel@...rr.cc>,
Jason Wang <jasowang@...hat.com>, Jiri Olsa <jolsa@...nel.org>,
John Fastabend <john.fastabend@...il.com>,
Jonathan Cameron <Jonathan.Cameron@...wei.com>,
Josh Poimboeuf <jpoimboe@...nel.org>, KP Singh <kpsingh@...nel.org>,
Kees Cook <kees@...nel.org>,
Luc Van Oostenryck <luc.vanoostenryck@...il.com>,
Marc Herbert <Marc.Herbert@...ux.intel.com>,
Martin KaFai Lau <martin.lau@...ux.dev>,
Mateusz Guzik <mjguzik@...il.com>, Michal Luczaj <mhal@...x.co>,
Miguel Ojeda <ojeda@...nel.org>, Mykola Lysenko <mykolal@...com>,
NeilBrown <neil@...wn.name>, Peter Zijlstra <peterz@...radead.org>,
Przemek Kitszel <przemyslaw.kitszel@...el.com>,
Sami Tolvanen <samitolvanen@...gle.com>,
Shuah Khan <shuah@...nel.org>, Song Liu <song@...nel.org>,
Stanislav Fomichev <sdf@...ichev.me>,
Thomas Gleixner <tglx@...utronix.de>,
Thorsten Blum <thorsten.blum@...ux.dev>,
Uros Bizjak <ubizjak@...il.com>,
Xuan Zhuo <xuanzhuo@...ux.alibaba.com>,
Yafang Shao <laoar.shao@...il.com>, Ye Bin <yebin10@...wei.com>,
Yonghong Song <yonghong.song@...ux.dev>,
Yufeng Wang <wangyufeng@...inos.cn>, bpf@...r.kernel.org,
linux-fsdevel@...r.kernel.org, linux-kernel@...r.kernel.org,
linux-kselftest@...r.kernel.org, linux-sparse@...r.kernel.org,
virtualization@...ts.linux.dev, x86@...nel.org
Subject: Re: [GIT PULL] __auto_type conversion for v6.19-rc1
On Mon, Dec 08, 2025 at 07:28:53PM -0800, H. Peter Anvin wrote:
> Yeah... the C committee even admitted they botched the spec; the intent was for it to work "exactly like gcc __auto_type"...
BTW, speaking of C23 fun that is supported by gcc 8, but not by sparse:
__has_include().
Do we want it? At the moment nothing in the kernel is using that thing.
The main case for that would be <asm/something_optional.h>, and mostly
it's dealt with by dummy asm-generic/something_optional.h and mandatory-y
in asm-generic/Kbuild, but there are at least some cases where we have
it guarded by ifdef, a-la
#ifdef CONFIG_ARCH_HAS_ELFCORE_COMPAT
#include <asm/elfcore-compat.h>
#endif
Linus? Seeing that I'm touching pre-process.c anyway for the sake of
__VA_OPT__, adding that thing ought to be reasonably easy - a bit of
work in expression_value(), the tricky part being where to stop the
scan: __has_include(< => scan to > and demand ) after it,
__has_include(string literal => demand ) after it,
__has_include(anything else => scan to matching ), and expand the
collected tokens. The same dodge we use for #include ("anything
potentially fishy in header-name and it's an UB, so one can
simulate it with other pp-tokens") works here...
Powered by blists - more mailing lists