Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1758900Ab0GPSok (ORCPT ); Fri, 16 Jul 2010 14:44:40 -0400 Received: from smtp1.linux-foundation.org ([140.211.169.13]:40373 "EHLO smtp1.linux-foundation.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1758790Ab0GPSoj (ORCPT ); Fri, 16 Jul 2010 14:44:39 -0400 MIME-Version: 1.0 In-Reply-To: <4C40A4E8.5090605@redhat.com> References: <20100714154923.947138065@efficios.com> <20100714155804.252253097@efficios.com> <4C405078.20707@redhat.com> <20100716144927.GA22516@Krystal> <4C408D0C.5050709@redhat.com> <20100716165855.GA3836@Krystal> <4C409CBA.1050709@redhat.com> <4C409F62.6030303@zytor.com> <4C40A1BD.4040507@redhat.com> <4C40A227.6000207@zytor.com> <4C40A4E8.5090605@redhat.com> Date: Fri, 16 Jul 2010 11:37:05 -0700 Message-ID: Subject: Re: [patch 2/2] x86 NMI-safe INT3 and Page Fault From: Linus Torvalds To: Avi Kivity Cc: "H. Peter Anvin" , Mathieu Desnoyers , LKML , Andrew Morton , Ingo Molnar , Peter Zijlstra , Steven Rostedt , Steven Rostedt , Frederic Weisbecker , Thomas Gleixner , Christoph Hellwig , Li Zefan , Lai Jiangshan , Johannes Berg , Masami Hiramatsu , Arnaldo Carvalho de Melo , Tom Zanussi , KOSAKI Motohiro , Andi Kleen , Jeremy Fitzhardinge , "Frank Ch. Eigler" Content-Type: text/plain; charset=ISO-8859-1 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1288 Lines: 31 On Fri, Jul 16, 2010 at 11:28 AM, Avi Kivity wrote: > > Use kmalloc and percpu pointers, it's not that onerous. What people don't seem to understand is that WE SHOULD NOT MAKE NMI FORCE US TO DO "STRANGE" CODE IN CODE-PATHS THAT HAVE NOTHING WHAT-SO-EVER TO DO WITH NMI. I'm shouting, because this point seems to have been continually missed. It was missed in the original patches, and it's been missed in the discussions. Non-NMI code should simply never have to even _think_ about NMI's. Why should it? It should just do whatever comes "natural" within its own context. This is why I've been pushing for the "let's just fix NMI" approach. Not adding random hacks to other code sequences that have nothing what-so-ever to do with NMI. So don't add NMI code to the page fault code. Not to the debug code, or to the module loading code. Don't say "use special allocations because the NMI code may care about these particular data structures". Because that way lies crap and unmaintainability. Linus -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/