RE: [PATCH] um: don't use CONFIG_X86_{32,64} symbols on x86
From: David Laight <hidden>
Date: 2021-09-03 08:27:40
Also in:
lkml
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) _______________________________________________ linux-um mailing list linux-um@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-um