|From:||Steven Rostedt <rostedt-AT-goodmis.org>|
|To:||"H. Peter Anvin" <hpa-AT-zytor.com>|
|Subject:||Re: [PATCH 2/3] x86: Remove cmpxchg from i386 NMI nesting code|
|Date:||Fri, 08 Jun 2012 13:52:09 -0400|
|Cc:||linux-kernel-AT-vger.kernel.org, Ingo Molnar <mingo-AT-elte.hu>, Andrew Morton <akpm-AT-linux-foundation.org>, Thomas Gleixner <tglx-AT-linutronix.de>|
On Fri, 2012-06-08 at 10:39 -0700, H. Peter Anvin wrote: > On 06/08/2012 10:36 AM, Steven Rostedt wrote: > >> > >> On i386 it's infinite, but again, I don't think the code will ever be > >> exercised on i386. I'm much more concerned about performance on current > >> processors. > > > > I'm not worried about non i386 here. Some context missing from the patch > > is that this code is surrounded by: > > > > Sorry, I meant i386 as in actual i386 processors, as opposed to modern > processors in 32-bit mode. > Fair enough. But still, I think a dec_and_test() is nicer (even if we use this_cpu_dec_and_return()). That's the rational for this change in the first place, with an added benefit that it would work with the fictional i386 old processor that does NMIs but no cmpxchg. Not to mention that I would love to make all users that have x86_64 machines running i386 kernels, for something other than testing i386, thrown into a large boiling pot of clue stew. It really pisses me off when people run these i386 machines with 16 gigs of memory and complain about performance. highmem should be disabled for any x86_64 box with more than 1G of RAM running an i386 kernel with a nasty message on boot up: "Idiot! Why the f*ck are you running i386 on your nice shiny new x86_64 machine, with Umpteen Gigs of RAM. Boot a x86_64 kernel for Christ sake and get your full potential. Your i386 userspace will still work just fine on it. You're like one of those 75 year old retirees that can finally buy a Porsche just to drive it 10 miles per hour below the speed limit with a line of cars behind them!" -- Steve
Copyright © 2012, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds