[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20260116090719-23bdcfe2-ee80-49bf-9545-61dd1e94e7c4@linutronix.de>
Date: Fri, 16 Jan 2026 09:09:34 +0100
From: Thomas Weißschuh <thomas.weissschuh@...utronix.de>
To: Arnd Bergmann <arnd@...db.de>
Cc: "David S . Miller" <davem@...emloft.net>,
Andreas Larsson <andreas@...sler.com>, Andy Lutomirski <luto@...nel.org>,
Thomas Gleixner <tglx@...nel.org>, Ingo Molnar <mingo@...hat.com>, Borislav Petkov <bp@...en8.de>,
Dave Hansen <dave.hansen@...ux.intel.com>, x86@...nel.org, "H. Peter Anvin" <hpa@...or.com>,
Heiko Carstens <hca@...ux.ibm.com>, Vasily Gorbik <gor@...ux.ibm.com>,
Alexander Gordeev <agordeev@...ux.ibm.com>, Christian Borntraeger <borntraeger@...ux.ibm.com>,
Sven Schnelle <svens@...ux.ibm.com>, sparclinux@...r.kernel.org, linux-kernel@...r.kernel.org,
Linux-Arch <linux-arch@...r.kernel.org>, linux-s390@...r.kernel.org, Sun Jian <sun.jian.kdev@...il.com>
Subject: Re: [PATCH 2/4] x86/vdso: Use 32-bit CHECKFLAGS for compat vDSO
On Fri, Jan 16, 2026 at 08:49:12AM +0100, Arnd Bergmann wrote:
> On Fri, Jan 16, 2026, at 08:40, Thomas Weißschuh wrote:
> > When building the compat vDSO the CHECKFLAGS from the 64-bit kernel
> > are used. These are combined with the 32-bit CFLAGS. This confuses
> > sparse, producing false-positive warnings or potentially missing
> > real issues.
> >
> > Manually override the CHECKFLAGS for the compat vDSO with the correct
> > 32-bit configuration.
> >
> > Reported-by: Sun Jian <sun.jian.kdev@...il.com>
> > Closes:
> > https://lore.kernel.org/lkml/20260114084529.1676356-1-sun.jian.kdev@gmail.com/
> > Signed-off-by: Thomas Weißschuh <thomas.weissschuh@...utronix.de>
>
> Acked-by: Arnd Bergmann <arnd@...db.de>
>
> > +CHECKFLAGS_32 := $(CHECKFLAGS) -U__x86_64__ -D__i386__ -m32
> > +
> > $(obj)/vdso32.so.dbg: KBUILD_CFLAGS = $(KBUILD_CFLAGS_32)
> > +$(obj)/vdso32.so.dbg: CHECKFLAGS = $(CHECKFLAGS_32)
>
> Have you checked if something like this is needed for x32 as well?
It didn't show up in my testing. I think this is explained by the x32 vDSO
being built as 64-bit and only converted to x32 afterwards.
Thomas
Powered by blists - more mailing lists