From: "Paul E. McKenney" <paulmck@linux.vnet.ibm.com> To: Frederic Weisbecker <fweisbec@gmail.com> Cc: Andy Lutomirski <luto@amacapital.net>, Chris Metcalf <cmetcalf@mellanox.com>, Thomas Gleixner <tglx@linutronix.de>, "linux-doc@vger.kernel.org" <linux-doc@vger.kernel.org>, Christoph Lameter <cl@linux.com>, Michal Hocko <mhocko@suse.com>, Gilad Ben Yossef <giladb@mellanox.com>, Andrew Morton <akpm@linux-foundation.org>, Viresh Kumar <viresh.kumar@linaro.org>, Linux API <linux-api@vger.kernel.org>, Steven Rostedt <rostedt@goodmis.org>, Ingo Molnar <mingo@kernel.org>, Tejun Heo <tj@kernel.org>, Rik van Riel <riel@redhat.com>, Will Deacon <will.deacon@arm.com>, "linux-mm@kvack.org" <linux-mm@kvack.org>, "linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>, Catalin Marinas <catalin.marinas@arm.com>, Peter Zijlstra <peterz@infradead.org> Subject: Re: [PATCH v15 04/13] task_isolation: add initial support Date: Tue, 27 Sep 2016 07:48:00 -0700 [thread overview] Message-ID: <20160927144800.GE14933@linux.vnet.ibm.com> (raw) In-Reply-To: <20160927142219.GC6242@lerouge> On Tue, Sep 27, 2016 at 04:22:20PM +0200, Frederic Weisbecker wrote: > On Fri, Sep 02, 2016 at 10:28:00AM -0700, Andy Lutomirski wrote: > > > > Unless I'm missing something (which is reasonably likely), couldn't > > the isolation code just force or require rcu_nocbs on the isolated > > CPUs to avoid this problem entirely. > > rcu_nocb is already implied by nohz_full. Which means that RCU callbacks > are offlined outside the nohz_full set of CPUs. Indeed, at boot time, RCU makes any nohz_full CPU also be a rcu_nocb CPU. > > I admit I still don't understand why the RCU context tracking code > > can't just run the callback right away instead of waiting however many > > microseconds in general. I feel like paulmck has explained it to me > > at least once, but that doesn't mean I remember the answer. > > The RCU context tracking doesn't take care of callbacks. It's only there > to tell the RCU core whether the CPU runs code that may or may not run > RCU read side critical sections. This is assumed by "kernel may use RCU, > userspace can't". And RCU has to wait for read-side critical sections to complete before invoking callbacks. Thanx, Paul
WARNING: multiple messages have this Message-ID (diff)
From: "Paul E. McKenney" <paulmck@linux.vnet.ibm.com> To: Frederic Weisbecker <fweisbec@gmail.com> Cc: Andy Lutomirski <luto@amacapital.net>, Chris Metcalf <cmetcalf@mellanox.com>, Thomas Gleixner <tglx@linutronix.de>, "linux-doc@vger.kernel.org" <linux-doc@vger.kernel.org>, Christoph Lameter <cl@linux.com>, Michal Hocko <mhocko@suse.com>, Gilad Ben Yossef <giladb@mellanox.com>, Andrew Morton <akpm@linux-foundation.org>, Viresh Kumar <viresh.kumar@linaro.org>, Linux API <linux-api@vger.kernel.org>, Steven Rostedt <rostedt@goodmis.org>, Ingo Molnar <mingo@kernel.org>, Tejun Heo <tj@kernel.org>, Rik van Riel <riel@redhat.com>, Will Deacon <will.deacon@arm.com>, "linux-mm@kvack.org" <linux-mm@kvack.org>, "linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>, Catalin Marinas <catalin.marinas@arm.com>, Peter Zijlstra <peterz@infradead.org> Subject: Re: [PATCH v15 04/13] task_isolation: add initial support Date: Tue, 27 Sep 2016 07:48:00 -0700 [thread overview] Message-ID: <20160927144800.GE14933@linux.vnet.ibm.com> (raw) In-Reply-To: <20160927142219.GC6242@lerouge> On Tue, Sep 27, 2016 at 04:22:20PM +0200, Frederic Weisbecker wrote: > On Fri, Sep 02, 2016 at 10:28:00AM -0700, Andy Lutomirski wrote: > > > > Unless I'm missing something (which is reasonably likely), couldn't > > the isolation code just force or require rcu_nocbs on the isolated > > CPUs to avoid this problem entirely. > > rcu_nocb is already implied by nohz_full. Which means that RCU callbacks > are offlined outside the nohz_full set of CPUs. Indeed, at boot time, RCU makes any nohz_full CPU also be a rcu_nocb CPU. > > I admit I still don't understand why the RCU context tracking code > > can't just run the callback right away instead of waiting however many > > microseconds in general. I feel like paulmck has explained it to me > > at least once, but that doesn't mean I remember the answer. > > The RCU context tracking doesn't take care of callbacks. It's only there > to tell the RCU core whether the CPU runs code that may or may not run > RCU read side critical sections. This is assumed by "kernel may use RCU, > userspace can't". And RCU has to wait for read-side critical sections to complete before invoking callbacks. Thanx, Paul -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
next prev parent reply other threads:[~2016-09-27 14:48 UTC|newest] Thread overview: 125+ messages / expand[flat|nested] mbox.gz Atom feed top 2016-08-16 21:19 [PATCH v15 00/13] support "task_isolation" mode Chris Metcalf 2016-08-16 21:19 ` [PATCH v15 01/13] vmstat: add quiet_vmstat_sync function Chris Metcalf 2016-08-16 21:19 ` [PATCH v15 02/13] vmstat: add vmstat_idle function Chris Metcalf 2016-08-16 21:19 ` Chris Metcalf 2016-08-16 21:19 ` [PATCH v15 03/13] lru_add_drain_all: factor out lru_add_drain_needed Chris Metcalf 2016-08-16 21:19 ` Chris Metcalf 2016-08-16 21:19 ` [PATCH v15 04/13] task_isolation: add initial support Chris Metcalf 2016-08-16 21:19 ` Chris Metcalf 2016-08-29 16:33 ` Peter Zijlstra 2016-08-29 16:33 ` Peter Zijlstra 2016-08-29 16:40 ` Chris Metcalf 2016-08-29 16:40 ` Chris Metcalf 2016-08-29 16:48 ` Peter Zijlstra 2016-08-29 16:48 ` Peter Zijlstra 2016-08-29 16:53 ` Chris Metcalf 2016-08-29 16:53 ` Chris Metcalf 2016-08-30 7:59 ` Peter Zijlstra 2016-08-30 7:59 ` Peter Zijlstra 2016-08-30 7:58 ` Peter Zijlstra 2016-08-30 7:58 ` Peter Zijlstra 2016-08-30 15:32 ` Chris Metcalf 2016-08-30 15:32 ` Chris Metcalf 2016-08-30 15:32 ` Chris Metcalf 2016-08-30 16:30 ` Andy Lutomirski 2016-08-30 16:30 ` Andy Lutomirski 2016-08-30 16:30 ` Andy Lutomirski 2016-08-30 17:02 ` Chris Metcalf 2016-08-30 17:02 ` Chris Metcalf 2016-08-30 18:43 ` Andy Lutomirski 2016-08-30 18:43 ` Andy Lutomirski 2016-08-30 19:37 ` Chris Metcalf 2016-08-30 19:37 ` Chris Metcalf 2016-08-30 19:50 ` Andy Lutomirski 2016-08-30 19:50 ` Andy Lutomirski 2016-08-30 19:50 ` Andy Lutomirski 2016-09-02 14:04 ` Chris Metcalf 2016-09-02 14:04 ` Chris Metcalf 2016-09-02 17:28 ` Andy Lutomirski 2016-09-02 17:28 ` Andy Lutomirski 2016-09-02 17:28 ` Andy Lutomirski 2016-09-09 17:40 ` Chris Metcalf 2016-09-09 17:40 ` Chris Metcalf 2016-09-12 17:41 ` Andy Lutomirski 2016-09-12 17:41 ` Andy Lutomirski 2016-09-12 19:25 ` Chris Metcalf 2016-09-12 19:25 ` Chris Metcalf 2016-09-27 14:22 ` Frederic Weisbecker 2016-09-27 14:22 ` Frederic Weisbecker 2016-09-27 14:39 ` Peter Zijlstra 2016-09-27 14:39 ` Peter Zijlstra 2016-09-27 14:51 ` Frederic Weisbecker 2016-09-27 14:51 ` Frederic Weisbecker 2016-09-27 14:48 ` Paul E. McKenney [this message] 2016-09-27 14:48 ` Paul E. McKenney 2016-09-30 16:59 ` Chris Metcalf 2016-09-30 16:59 ` Chris Metcalf 2016-09-01 10:06 ` Peter Zijlstra 2016-09-01 10:06 ` Peter Zijlstra 2016-09-02 14:03 ` Chris Metcalf 2016-09-02 14:03 ` Chris Metcalf 2016-09-02 16:40 ` Peter Zijlstra 2016-09-02 16:40 ` Peter Zijlstra 2017-02-02 16:13 ` Eugene Syromiatnikov 2017-02-02 18:12 ` Chris Metcalf 2016-08-16 21:19 ` [PATCH v15 05/13] task_isolation: track asynchronous interrupts Chris Metcalf 2016-08-16 21:19 ` [PATCH v15 06/13] arch/x86: enable task isolation functionality Chris Metcalf 2016-08-30 21:46 ` Andy Lutomirski 2016-08-16 21:19 ` [PATCH v15 07/13] arm64: factor work_pending state machine to C Chris Metcalf 2016-08-16 21:19 ` Chris Metcalf 2016-08-17 8:05 ` Will Deacon 2016-08-17 8:05 ` Will Deacon 2016-08-16 21:19 ` [PATCH v15 08/13] arch/arm64: enable task isolation functionality Chris Metcalf 2016-08-16 21:19 ` Chris Metcalf 2016-08-26 16:25 ` Catalin Marinas 2016-08-26 16:25 ` Catalin Marinas 2016-08-16 21:19 ` [PATCH v15 09/13] arch/tile: " Chris Metcalf 2016-08-16 21:19 ` [PATCH v15 10/13] arm, tile: turn off timer tick for oneshot_stopped state Chris Metcalf 2016-08-16 21:19 ` [PATCH v15 11/13] task_isolation: support CONFIG_TASK_ISOLATION_ALL Chris Metcalf 2016-08-16 21:19 ` [PATCH v15 12/13] task_isolation: add user-settable notification signal Chris Metcalf 2016-08-16 21:19 ` [PATCH v15 13/13] task_isolation self test Chris Metcalf 2016-08-17 19:37 ` [PATCH] Fix /proc/stat freezes (was [PATCH v15] "task_isolation" mode) Christoph Lameter 2016-08-17 19:37 ` Christoph Lameter 2016-08-20 1:42 ` Chris Metcalf 2016-08-20 1:42 ` Chris Metcalf 2016-09-28 13:16 ` Frederic Weisbecker 2016-08-29 16:27 ` Ping: [PATCH v15 00/13] support "task_isolation" mode Chris Metcalf 2016-08-29 16:27 ` Chris Metcalf 2016-09-07 21:11 ` Francis Giraldeau 2016-09-07 21:39 ` Francis Giraldeau 2016-09-07 21:39 ` Francis Giraldeau 2016-09-08 16:21 ` Francis Giraldeau 2016-09-08 16:21 ` Francis Giraldeau 2016-09-12 16:01 ` Chris Metcalf 2016-09-12 16:01 ` Chris Metcalf 2016-09-12 16:14 ` Peter Zijlstra 2016-09-12 21:15 ` Rafael J. Wysocki 2016-09-13 0:05 ` Rafael J. Wysocki 2016-09-13 16:00 ` Francis Giraldeau 2016-09-13 0:20 ` Francis Giraldeau 2016-09-13 16:12 ` Chris Metcalf 2016-09-13 16:12 ` Chris Metcalf 2016-09-27 14:49 ` Frederic Weisbecker 2016-09-27 14:49 ` Frederic Weisbecker 2016-09-27 14:35 ` Frederic Weisbecker 2016-09-30 17:07 ` Chris Metcalf 2016-09-30 17:07 ` Chris Metcalf 2016-11-05 4:04 ` task isolation discussion at Linux Plumbers Chris Metcalf 2016-11-05 16:05 ` Christoph Lameter 2016-11-07 16:55 ` Thomas Gleixner 2016-11-07 18:36 ` Thomas Gleixner 2016-11-07 19:12 ` Rik van Riel 2016-11-07 19:16 ` Will Deacon 2016-11-07 19:18 ` Rik van Riel 2016-11-11 20:54 ` Luiz Capitulino 2016-11-09 1:40 ` Paul E. McKenney 2016-11-09 11:14 ` Andy Lutomirski 2016-11-09 17:38 ` Paul E. McKenney 2016-11-09 18:57 ` Will Deacon 2016-11-09 19:11 ` Paul E. McKenney 2016-11-10 1:44 ` Andy Lutomirski 2016-11-10 4:52 ` Paul E. McKenney 2016-11-10 5:10 ` Paul E. McKenney 2016-11-11 17:00 ` Andy Lutomirski 2016-11-09 11:07 ` Frederic Weisbecker 2016-12-19 14:37 ` Paul E. McKenney
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20160927144800.GE14933@linux.vnet.ibm.com \ --to=paulmck@linux.vnet.ibm.com \ --cc=akpm@linux-foundation.org \ --cc=catalin.marinas@arm.com \ --cc=cl@linux.com \ --cc=cmetcalf@mellanox.com \ --cc=fweisbec@gmail.com \ --cc=giladb@mellanox.com \ --cc=linux-api@vger.kernel.org \ --cc=linux-doc@vger.kernel.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-mm@kvack.org \ --cc=luto@amacapital.net \ --cc=mhocko@suse.com \ --cc=mingo@kernel.org \ --cc=peterz@infradead.org \ --cc=riel@redhat.com \ --cc=rostedt@goodmis.org \ --cc=tglx@linutronix.de \ --cc=tj@kernel.org \ --cc=viresh.kumar@linaro.org \ --cc=will.deacon@arm.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.