[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <f177f8b287f14c93b04542d7ab4a8dfd@AcuMS.aculab.com>
Date: Fri, 3 Sep 2021 08:27:24 +0000
From: David Laight <David.Laight@...LAB.COM>
To: 'Johannes Berg' <johannes@...solutions.net>,
"linux-um@...ts.infradead.org" <linux-um@...ts.infradead.org>
CC: "x86@...nel.org" <x86@...nel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
Johannes Berg <johannes.berg@...el.com>
Subject: RE: [PATCH] um: don't use CONFIG_X86_{32,64} symbols on x86
From: Johannes Berg
> Sent: 02 September 2021 09:28
>
> The CONFIG_X86_32 and CONFIG_X86_64 symbols are used by
> both "real" x86 architecture builds and ARCH=um today.
> However, clearly most people and places in the code are
> treating it as the architecture Kconfig (technically
> that's just CONFIG_X86) and use it to indicate that the
> architecture is X86 in 32- or 64-bit flavour.
>
> This has caused a fair amount of issues in the past,
> for example drivers not building because use x86 macros
> or similar under CONFIG_X86_{32,64} ifdef, and then we
> find build reports and add "!UML" to their Kconfig etc.
>
> However, this is error-prone and a kind of whack-a-mole
> game, even with the build bots reporting things.
I suspect you've just changed the 'mole'.
You've now got lots of lines like:
#if defined(CONFIG_X86_64) || defined(CONFIG_X86_64_UML)
Missing off the UML define is going to cause the 32bit code
to get compiled by mistake - which is likely to be more
confusing that the places where you need to do special 'stuff'
for UML.
David
-
Registered Address Lakeside, Bramley Road, Mount Farm, Milton Keynes, MK1 1PT, UK
Registration No: 1397386 (Wales)
Powered by blists - more mailing lists