Thread (26 messages) 26 messages, 7 authors, 2025-06-07

Re: Large modules with 6.15 [was: [PATCH v4 6/6] percpu/x86: Enable strict percpu checks via named AS qualifiers]

From: Uros Bizjak <hidden>
Date: 2025-06-06 18:48:41
Also in: linux-arch, linux-bcachefs, linux-mm, lkml

On Fri, Jun 6, 2025 at 6:39 PM Alexei Starovoitov
[off-list ref] wrote:
On Fri, Jun 6, 2025 at 2:27 AM Uros Bizjak [off-list ref] wrote:
quoted
On Fri, Jun 6, 2025 at 11:17 AM Jiri Slaby [off-list ref] wrote:
quoted
On 05. 06. 25, 19:31, Uros Bizjak wrote:
quoted
On Thu, Jun 5, 2025 at 7:15 PM Dave Hansen [off-list ref] wrote:
quoted
On 6/5/25 07:27, Jiri Slaby wrote:
quoted
Reverting this gives me back to normal sizes.

Any ideas?
I don't see any reason not to revert it. The benefits weren't exactly
clear from the changelogs or cover letter. Enabling "various compiler
checks" doesn't exactly scream that this is critical to end users in
some way.

The only question is if we revert just this last patch or the whole series.

Uros, is there an alternative to reverting?
This functionality can easily be disabled in include/linux/compiler.h
by not defining USE_TYPEOF_UNQUAL:

#if CC_HAS_TYPEOF_UNQUAL && !defined(__CHECKER__)
# define USE_TYPEOF_UNQUAL 1
#endif

(support for typeof_unqual keyword is required to handle __seg_gs
qualifiers), but ...

... the issue is reportedly fixed, please see [1], and ...
Confirmed, I need a patched userspace (libbpf).
quoted
... you will disable much sought of feature, just ask tglx (and please
read his rant at [2]):
Given this is the second time I hit a bug with this, perhaps introduce
an EXPERIMENTAL CONFIG option, so that random users can simply disable
it if an issue occurs? Without the need of patching random userspace and
changing random kernel headers?
In both cases, the patch *exposed* a bug in a related utility
software, it is not that the patch itself is buggy. IMO, waving off
the issue by disabling the feature you just risk the bug in the
related software to hit even harder in some not too distant future.
The typeof_unqual exposed the issue in the way GCC generates dwarf.
The libbpf/pahole is a workaround for incorrect dwarf.
The compiler shouldn't emit two identical dwarf definition for
one underlying type within one compilation unit. In this case
typeof_unqual somehow confused gcc.
Can you please file a bugreport in GCC bugzilla, so we can analyze the issue?

Uros.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help