[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250305221700.GPZ8jNXPCFR1w1NyEQ@fat_crate.local>
Date: Wed, 5 Mar 2025 23:17:00 +0100
From: Borislav Petkov <bp@...en8.de>
To: Ingo Molnar <mingo@...nel.org>
Cc: Arnd Bergmann <arnd@...nel.org>, Thomas Gleixner <tglx@...utronix.de>,
Ingo Molnar <mingo@...hat.com>,
Dave Hansen <dave.hansen@...ux.intel.com>, x86@...nel.org,
Kuppuswamy Sathyanarayanan <sathyanarayanan.kuppuswamy@...ux.intel.com>,
Rick Edgecombe <rick.p.edgecombe@...el.com>,
"Kirill A. Shutemov" <kirill.shutemov@...ux.intel.com>,
Tom Lendacky <thomas.lendacky@....com>,
Arnd Bergmann <arnd@...db.de>, "H. Peter Anvin" <hpa@...or.com>,
"Jason A. Donenfeld" <Jason@...c4.com>,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH] x86: coco: mark cc_mask as __maybe_unused
On Wed, Mar 05, 2025 at 11:44:34AM +0100, Ingo Molnar wrote:
>
> * Arnd Bergmann <arnd@...nel.org> wrote:
>
> > From: Arnd Bergmann <arnd@...db.de>
> >
> > When extra warnings are enabled, the cc_mask definition in asm/coco.h
> > causes a build failure with gcc:
> >
> > arch/x86/include/asm/coco.h:28:18: error: 'cc_mask' defined but not used [-Werror=unused-const-variable=]
> > 28 | static const u64 cc_mask = 0;
> >
> > Mark this one as __maybe_unused.
> >
> > Fixes: a0a8d15a798b ("x86/tdx: Preserve shared bit on mprotect()")
> > Signed-off-by: Arnd Bergmann <arnd@...db.de>
> > ---
> > arch/x86/include/asm/coco.h | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/arch/x86/include/asm/coco.h b/arch/x86/include/asm/coco.h
> > index aa6c8f8ca958..9e9204cfca6f 100644
> > --- a/arch/x86/include/asm/coco.h
> > +++ b/arch/x86/include/asm/coco.h
> > @@ -25,7 +25,7 @@ u64 cc_mkdec(u64 val);
> > void cc_random_init(void);
> > #else
> > #define cc_vendor (CC_VENDOR_NONE)
> > -static const u64 cc_mask = 0;
> > +static const __maybe_unused u64 cc_mask = 0;
>
> So I detest __maybe_unused with a vengeance: the 'maybe' unnecessarily
> inserts uncertainty & probability language into the text, while there's
> nothing uncertain about this interface or the code. Why cannot the
> compiler figure it out?
>
> Anyway, I'd suggest we change direct usage of cc_mask to a
> get_cc_mask() inline function instead, this will resolve the warning,
> plus it avoids some messy looking variable shadowing in tdx.c AFAICS:
>
> arch/x86/coco/tdx/tdx.c:static void tdx_setup(u64 *cc_mask)
Touch ~17 spots:
$ git grep -w cc_mask arch/x86 | wc -l
17
just because of some stupid gcc extra warning switch?
I say disable the gcc warning. Pfft.
--
Regards/Gruss,
Boris.
https://people.kernel.org/tglx/notes-about-netiquette
Powered by blists - more mailing lists