From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756064AbZCBTOp (ORCPT ); Mon, 2 Mar 2009 14:14:45 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1752414AbZCBTOg (ORCPT ); Mon, 2 Mar 2009 14:14:36 -0500 Received: from mx2.redhat.com ([66.187.237.31]:49873 "EHLO mx2.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751577AbZCBTOf (ORCPT ); Mon, 2 Mar 2009 14:14:35 -0500 Message-ID: <49AC2FDF.9070700@redhat.com> Date: Mon, 02 Mar 2009 14:13:35 -0500 From: Masami Hiramatsu User-Agent: Thunderbird 2.0.0.19 (X11/20090105) MIME-Version: 1.0 To: Arjan van de Ven CC: Mathieu Desnoyers , Ingo Molnar , Andrew Morton , Nick Piggin , Steven Rostedt , Andi Kleen , linux-kernel@vger.kernel.org, Thomas Gleixner , Peter Zijlstra , Frederic Weisbecker , Linus Torvalds , Rusty Russell , "H. Peter Anvin" , Steven Rostedt Subject: Re: [RFC][PATCH] x86: make text_poke() atomic References: <20090223173108.GB1441@Krystal> <49A82851.5080707@redhat.com> <20090227180724.GA17947@Krystal> <49A83237.40604@redhat.com> <20090227185316.GA19811@Krystal> <49A853CD.3020607@redhat.com> <49AC10E9.1090102@redhat.com> <20090302102841.7e099670@infradead.org> <20090302183617.GA25105@Krystal> <20090302105500.569e1270@infradead.org> In-Reply-To: <20090302105500.569e1270@infradead.org> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Arjan van de Ven wrote: > On Mon, 2 Mar 2009 13:36:17 -0500 > Mathieu Desnoyers wrote: > >> * Arjan van de Ven (arjan@infradead.org) wrote: >>>> Use map_vm_area() instead of vmap() in text_poke() for avoiding >>>> page allocation and delayed unmapping, and call >>>> vunmap_page_range() and local_flush_tlb() directly because this >>>> mapping is temporary and local. >>>> >>>> At the result of above change, text_poke() becomes atomic and can >>>> be called from stop_machine() etc. >>> .... but text_poke() realistically needs to call stop_machine() >>> since you can't poke live code.... so that makes me wonder how >>> useful this is... >> Hi Arjan, >> >> Stop machine is not required when inserting a breakpoint. > > that is your assumption; when I spoke with CPU architects they > cringed ;( Is that true even if modifying just one-byte (like int3 insertion) and we don't care synchronous write(that means code modification effects on other processors after a while)? Thank you, -- Masami Hiramatsu Software Engineer Hitachi Computer Products (America) Inc. Software Solutions Division e-mail: mhiramat@redhat.com