From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from szxga02-in.huawei.com ([119.145.14.65]:49308 "EHLO szxga02-in.huawei.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755603AbbESLSz (ORCPT ); Tue, 19 May 2015 07:18:55 -0400 Message-ID: <555B1C03.4040801@huawei.com> Date: Tue, 19 May 2015 19:18:27 +0800 From: zhangzhiqiang MIME-Version: 1.0 To: Peter Zijlstra CC: , , , Subject: Re: [PATCH] perf/x86: Further optimize copy_from_user_nmi() References: <1432008519-30608-1-git-send-email-zhangzhiqiang.zhang@huawei.com> <20150519073906.GC19282@twins.programming.kicks-ass.net> In-Reply-To: <20150519073906.GC19282@twins.programming.kicks-ass.net> Content-Type: text/plain; charset="ISO-8859-1" Content-Transfer-Encoding: 7bit Sender: stable-owner@vger.kernel.org List-ID: On 2015/5/19 15:39, Peter Zijlstra wrote: > On Tue, May 19, 2015 at 12:08:39PM +0800, Zhiqiang Zhang wrote: >> commit e00b12e64be9a34ef071de7b6052ca9ea29dd460 upstream >> >> Now that we can deal with nested NMI due to IRET re-enabling NMIs and >> can deal with faults from NMI by making sure we preserve CR2 over NMIs >> we can in fact simply access user-space memory from NMI context. >> >> So rewrite copy_from_user_nmi() to use __copy_from_user_inatomic() and >> rework the fault path to do the minimal required work before taking >> the in_atomic() fault handler. >> >> In particular avoid perf_sw_event() which would make perf recurse on >> itself (it should be harmless as our recursion protections should be >> able to deal with this -- but why tempt fate). >> >> Also rename notify_page_fault() to kprobes_fault() as that is a much >> better name; there is no notifier in it and its specific to kprobes. >> >> Don measured that his worst case NMI path shrunk from ~300K cycles to >> ~150K cycles. >> >> Cc: Stephane Eranian >> Cc: jmario@redhat.com >> Cc: Arnaldo Carvalho de Melo >> Cc: Linus Torvalds >> Cc: Andi Kleen >> Cc: dave.hansen@linux.intel.com >> Tested-by: Don Zickus >> Signed-off-by: Peter Zijlstra >> Link: http://lkml.kernel.org/r/20131024105206.GM2490@laptop.programming.kicks-ass.net >> Signed-off-by: Ingo Molnar >> [zhangzhiqiang: backport to 3.10: > > Did you make sure all the nested NMI fixes are in 3.10? > > . > Sorry, i am not quite sure about that, i just using it fixes page fault from PMI. I will looking farther carefully. thanks very much.