Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752334AbdI2Rpd (ORCPT ); Fri, 29 Sep 2017 13:45:33 -0400 Received: from mail-wr0-f195.google.com ([209.85.128.195]:34615 "EHLO mail-wr0-f195.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752162AbdI2Rpc (ORCPT ); Fri, 29 Sep 2017 13:45:32 -0400 X-Google-Smtp-Source: AOwi7QATK/jDyWXl9nrr3noQ8ruo1xFfzg4W3jf+Y/JT0K4jqnneJouD8xGI0RIGfxdBAIB+IPmfzg== Date: Fri, 29 Sep 2017 19:45:28 +0200 From: Ingo Molnar To: Masami Hiramatsu Cc: mingo@redhat.com, x86@kernel.org, Steven Rostedt , linux-kernel@vger.kernel.org, Peter Zijlstra , Ananth N Mavinakayanahalli , Thomas Gleixner , "H . Peter Anvin" , "Paul E . McKenney" , Alexei Starovoitov , Alexei Starovoitov Subject: Re: [PATCH -tip v3 7/7] kprobes: Use synchronize_rcu_tasks() for optprobe with CONFIG_PREEMPT Message-ID: <20170929174527.ajbzh5jljaffh57x@gmail.com> References: <150581509713.32348.1905525476438163954.stgit@devbox> <150581537997.32348.14125457458719053753.stgit@devbox> <20170928072220.iv5subwl4u4zcqcp@gmail.com> <20170929002938.64cb852d6d921ec013d7f052@kernel.org> <20170929073755.ypjz6cidn7aiyxbq@gmail.com> <20170929074436.f447187d99e5e78008b15234@kernel.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20170929074436.f447187d99e5e78008b15234@kernel.org> User-Agent: NeoMutt/20170113 (1.7.2) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1548 Lines: 50 * Masami Hiramatsu wrote: > On Fri, 29 Sep 2017 09:37:55 +0200 > Ingo Molnar wrote: > > > > > * Masami Hiramatsu wrote: > > > > > On Thu, 28 Sep 2017 09:22:20 +0200 > > > Ingo Molnar wrote: > > > > > > > > > > > * Masami Hiramatsu wrote: > > > > > > > > > To enable jump optimized probe with CONFIG_PREEMPT, use > > > > > synchronize_rcu_tasks() to wait for all tasks preempted > > > > > on trampoline code back on track. > > > > > > > > This sentence does not parse. It's missing a verb, but I'm not sure. > > > > > > Hmm, how about this? > > > > > > Use synchthnize_rcu_tasks() to wait for all tasks preempted > > > on trampoline code back on track so that jump optimized probe > > > can be enabled with CONFIG_PREEMPT. > > > > What's "synchthnize"? ... > > Oops, it's my typo. my XPS touch pad is really unstable... > > > > > More seriously, I still don't understand it. What is 'back on track'? > > > > Do you mean to say: > > > > We want to wait for all potentially preempted kprobes trampoline execution to > > have completed. This guarantees that any freed trampoline memory is not in use > > by any task in the system anymore. synchronize_rcu_tasks() gives such a > > guarantee, so use it. > > Exactly, this is correct! Ok, great - please re-send the remaining kprobes patches that I have not applied yet - I'll read through the changelogs and fix any bits that might still be unclear. Thanks, Ingo