[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ZeWrqNcbSFJrQddR@gmail.com>
Date: Mon, 4 Mar 2024 12:08:24 +0100
From: Ingo Molnar <mingo@...nel.org>
To: Thomas Gleixner <tglx@...utronix.de>
Cc: LKML <linux-kernel@...r.kernel.org>, x86@...nel.org,
Linus Torvalds <torvalds@...uxfoundation.org>,
Uros Bizjak <ubizjak@...il.com>, linux-sparse@...r.kernel.org,
lkp@...el.com, oe-kbuild-all@...ts.linux.dev
Subject: Re: [patch 0/9] x86: Cure tons of sparse warnings (mostly __percpu)
* Thomas Gleixner <tglx@...utronix.de> wrote:
> A recent 0-day report about new __percpu related sparse warnings made me
> look deeper into it after I dismissed the report as bogus initially.
>
> It turned out that sparse is actually right and all of these warnings (not
> only the most recent ones) are valid and got ignored. Some of them for many
> years.
>
> The worst offender is an UP build because that maps the per CPU cpu_info to
> boot_cpu_data, which is regular data.
>
> As a consequence all per CPU accessors which look like legit code and are
> legit code in the SMP build are causing sparse to emit warnings.
>
> This series addresses this by:
>
> - Adding the missing __percpu annotations all over the place
>
> - Curing the UP madness by exposing a proper per CPU cpu_info for the
> price of wasting 320 byte of memory.
>
> Even if the size police will hate me for that, this cures most of
> the madness in one go and avoids to add more hideous macro mess
> similar to the completely bogus cpu_data() one which should have
> never been there in the first place.
The market of UP-only systems running an upstream Linux kernel is shrinking
fast, so I doubt this is a real concern.
> I know that there are people who think that size matters, but the
> only things which really matter in software are correctness and
> maintainability. The latter simply forbids to add more hideous macro
> mess just to avoid wasting 320 bytes of memory for something which
> is mostly a reminiscence of the good old days...
>
> - Fixing a few obvious non __percpu related warnings which stood out
> prominently.
>
> That reduces the sparse warnings in arch/x86 significantly.
Great - there's also the side benefit of reduction in <asm/processor.h>
complexity via patch #2, which is great for ongoing work to reduce header
depdency hell ...
I've applied your Sparse fixes to tip:x86/cleanups straight away, so they
have a chance to make it into v6.9.
Thanks,
Ingo
Powered by blists - more mailing lists