On Thu, Oct 20, 2022 at 07:10:46PM -0700, Linus Torvalds wrote: > Maybe we should just bite the bullet, and say that we only support > x86-32 with 'cmpxchg8b' (ie Pentium and later). > > Get rid of all the "emulate 64-bit atomics with cli/sti, knowing that > nobody has SMP on those CPU's anyway", and implement a generic x86-32 > xchg() setup using that try_cmpxchg64 loop. > > I think most (all?) distros already enable X86_PAE anyway, which makes > that X86_CMPXCHG64 be part of the base requirement. > > Not that I'm convinced most distros even do 32-bit development anyway > these days. > > (Of course, if we require X86_CMPXCHG64, we'll also hit some of the > odd clone CPU's that actually *do* support the instruction, but do not > report it in cpuid due to an odd old Windows NT bug. IOW, things like > the Cyrix and Transmeta CPU's did support the instruction, but had the > CX8 bit clear because otherwise NT wouldn't boot. We may or may not > get those cases right, but I doubt anybody really has any of those old > CPUs). > > We got rid of i386 support back in 2012. Maybe it's time to get rid of > i486 support in 2022? > > That way we could finally get rid of CONFIG_MATH_EMULATION too. Would love that; but as pointed out, there's still a few stragglers out there. OTOH, they *could* use one of the LTS kernels.