All of lore.kernel.org
 help / color / mirror / Atom feed
From: Chris Metcalf <cmetcalf@ezchip.com>
To: Andy Lutomirski <luto@amacapital.net>
Cc: Gilad Ben Yossef <giladb@ezchip.com>,
	Steven Rostedt <rostedt@goodmis.org>,
	Ingo Molnar <mingo@kernel.org>,
	Peter Zijlstra <peterz@infradead.org>,
	Andrew Morton <akpm@linux-foundation.org>,
	Rik van Riel <riel@redhat.com>, Tejun Heo <tj@kernel.org>,
	Frederic Weisbecker <fweisbec@gmail.com>,
	Thomas Gleixner <tglx@linutronix.de>,
	"Paul E. McKenney" <paulmck@linux.vnet.ibm.com>,
	Christoph Lameter <cl@linux.com>,
	Viresh Kumar <viresh.kumar@linaro.org>,
	Catalin Marinas <catalin.marinas@arm.com>,
	Will Deacon <will.deacon@arm.com>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"H. Peter Anvin" <hpa@zytor.com>, X86 ML <x86@kernel.org>
Subject: Re: [PATCH v7 07/11] arch/x86: enable task isolation functionality
Date: Mon, 28 Sep 2015 17:57:20 -0400	[thread overview]
Message-ID: <5609B7C0.3010807@ezchip.com> (raw)
In-Reply-To: <CALCETrWh2iW_sz7Bd+QqWa0OQZsrma_Dxk1zZEZUbpr9E+GuqA@mail.gmail.com>

On 09/28/2015 04:59 PM, Andy Lutomirski wrote:
> On Mon, Sep 28, 2015 at 11:17 AM, Chris Metcalf <cmetcalf@ezchip.com> wrote:
>> In prepare_exit_to_usermode(), we would like to call
>> task_isolation_enter() on every return to userspace, and like
>> other work items, we would like to recheck for more work after
>> calling it, since it will enable interrupts internally.
>>
>> However, if task_isolation_enter() is the only work item,
>> and it has already been called once, we don't want to continue
>> calling it in a loop.  We don't have a dedicated TIF flag for
>> task isolation, and it wouldn't make sense to have one, since
>> we'd want to set it before starting exit every time, and then
>> clear it the first time around the loop.
>>
>> Instead, we change the loop structure somewhat, so that we
>> have a more inclusive set of flags that are tested for on the
>> first entry to the function (including TIF_NOHZ), and if any
>> of those flags are set, we enter the loop.  And, we do the
>> task_isolation() test unconditionally at the bottom of the loop,
>> but then when making the decision to loop back, we just use the
>> set of flags that doesn't include TIF_NOHZ.  That way we only
>> loop if there is other work to do, but then if that work
>> is done, we again unconditionally call task_isolation_enter().
>>
>> In syscall_trace_enter_phase1(), we try to add the necessary
>> support for strict-mode detection of syscalls in an optimized
>> way, by letting the code remain unchanged if we are not using
>> TASK_ISOLATION, but otherwise calling enter_from_user_mode()
>> under the first time we see _TIF_NOHZ, and then waiting until
>> after we do the secure computing work to actually clear the bit
>> from the "work" variable and call task_isolation_syscall().
>>
>> Signed-off-by: Chris Metcalf <cmetcalf@ezchip.com>
>> ---
>>   arch/x86/entry/common.c | 47 ++++++++++++++++++++++++++++++++++++-----------
>>   1 file changed, 36 insertions(+), 11 deletions(-)
>>
>> diff --git a/arch/x86/entry/common.c b/arch/x86/entry/common.c
>> index 80dcc9261ca3..0f74389c6f3b 100644
>> --- a/arch/x86/entry/common.c
>> +++ b/arch/x86/entry/common.c
>> @@ -21,6 +21,7 @@
>>   #include <linux/context_tracking.h>
>>   #include <linux/user-return-notifier.h>
>>   #include <linux/uprobes.h>
>> +#include <linux/isolation.h>
>>
>>   #include <asm/desc.h>
>>   #include <asm/traps.h>
>> @@ -81,7 +82,8 @@ unsigned long syscall_trace_enter_phase1(struct pt_regs *regs, u32 arch)
>>           */
>>          if (work & _TIF_NOHZ) {
>>                  enter_from_user_mode();
>> -               work &= ~_TIF_NOHZ;
>> +               if (!IS_ENABLED(CONFIG_TASK_ISOLATION))
>> +                       work &= ~_TIF_NOHZ;
>>          }
>>   #endif
>>
>> @@ -131,6 +133,13 @@ unsigned long syscall_trace_enter_phase1(struct pt_regs *regs, u32 arch)
>>          }
>>   #endif
>>
>> +       /* Now check task isolation, if needed. */
>> +       if (IS_ENABLED(CONFIG_TASK_ISOLATION) && (work & _TIF_NOHZ)) {
>> +               work &= ~_TIF_NOHZ;
>> +               if (task_isolation_strict())
>> +                       task_isolation_syscall(regs->orig_ax);
>> +       }
>> +
> This is IMO rather nasty.  Can you try to find a way to do this
> without making the control flow depend on config options?

Well, I suppose this is the best argument for testing for task
isolation before seccomp :-)

Honestly, if not, it's tricky to see how to do better; I did spend
some time looking at it.  One possibility is to just unconditionally
clear _TIF_NOHZ before testing "work == 0", so that we can
test (work & TIF_NOHZ) once early and once after seccomp.
This presumably costs a cycle in the no-nohz-full case.

So maybe just do it before seccomp...

> What guarantees that TIF_NOHZ is an acceptable thing to check?

Well, TIF_NOHZ is set on all tasks whenever we are running with
nohz_full enabled anywhere, so testing it lets us do stuff on
the fastpath without slowing down the fastpath much.
See context_tracking_cpu_set().

>>          /* Do our best to finish without phase 2. */
>>          if (work == 0)
>>                  return ret;  /* seccomp and/or nohz only (ret == 0 here) */
>> @@ -217,10 +226,26 @@ static struct thread_info *pt_regs_to_thread_info(struct pt_regs *regs)
>>   /* Called with IRQs disabled. */
>>   __visible void prepare_exit_to_usermode(struct pt_regs *regs)
>>   {
>> +       u32 cached_flags;
>> +
>>          if (WARN_ON(!irqs_disabled()))
>>                  local_irq_disable();
>>
>>          /*
>> +        * We may want to enter the loop here unconditionally to make
>> +        * sure to do some work at least once.  Test here for all
>> +        * possible conditions that might make us enter the loop,
>> +        * and return immediately if none of them are set.
>> +        */
>> +       cached_flags = READ_ONCE(pt_regs_to_thread_info(regs)->flags);
>> +       if (!(cached_flags & (TIF_SIGPENDING | _TIF_NOTIFY_RESUME |
>> +                             _TIF_UPROBE | _TIF_NEED_RESCHED |
>> +                             _TIF_USER_RETURN_NOTIFY | _TIF_NOHZ))) {
>> +               user_enter();
>> +               return;
>> +       }
>> +
> Too complicated and too error prone.
>
> In any event, I don't think that the property you actually want is for
> the loop to be entered once.  I think the property you want is that
> we're isolated by the time we're finished.  Why not just check that
> directly in the loop condition?

So something like this (roughly):

                 if (!(cached_flags & (_TIF_SIGPENDING | _TIF_NOTIFY_RESUME |
                                       _TIF_UPROBE | _TIF_NEED_RESCHED |
                                       _TIF_USER_RETURN_NOTIFY)) &&
+                    task_isolation_done())
                         break;

i.e. just add the one extra call?  That could work, I suppose.
In the body we would then keep the proposed logic that unconditionally
calls task_isolation_enter().

>> +       /*
>>           * In order to return to user mode, we need to have IRQs off with
>>           * none of _TIF_SIGPENDING, _TIF_NOTIFY_RESUME, _TIF_USER_RETURN_NOTIFY,
>>           * _TIF_UPROBE, or _TIF_NEED_RESCHED set.  Several of these flags
>> @@ -228,15 +253,7 @@ __visible void prepare_exit_to_usermode(struct pt_regs *regs)
>>           * so we need to loop.  Disabling preemption wouldn't help: doing the
>>           * work to clear some of the flags can sleep.
>>           */
>> -       while (true) {
>> -               u32 cached_flags =
>> -                       READ_ONCE(pt_regs_to_thread_info(regs)->flags);
>> -
>> -               if (!(cached_flags & (_TIF_SIGPENDING | _TIF_NOTIFY_RESUME |
>> -                                     _TIF_UPROBE | _TIF_NEED_RESCHED |
>> -                                     _TIF_USER_RETURN_NOTIFY)))
>> -                       break;
>> -
>> +       do {
>>                  /* We have work to do. */
>>                  local_irq_enable();
>>
>> @@ -258,9 +275,17 @@ __visible void prepare_exit_to_usermode(struct pt_regs *regs)
>>                  if (cached_flags & _TIF_USER_RETURN_NOTIFY)
>>                          fire_user_return_notifiers();
>>
>> +               if (task_isolation_enabled())
>> +                       task_isolation_enter();
>> +
> Does anything here guarantee forward progress or at least give
> reasonable confidence that we'll make forward progress?

A given task can get stuck in the kernel if it has a lengthy far-future
alarm() type situation, or if there are multiple task-isolated tasks
scheduled onto the same core, but that only affects those tasks;
other tasks on the same core, and the system as a whole, are OK.

-- 
Chris Metcalf, EZChip Semiconductor
http://www.ezchip.com


  reply	other threads:[~2015-09-28 21:57 UTC|newest]

Thread overview: 340+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-05-08 17:58 [PATCH 0/6] support "dataplane" mode for nohz_full Chris Metcalf
2015-05-08 17:58 ` Chris Metcalf
2015-05-08 17:58 ` [PATCH 1/6] nohz_full: add support for "dataplane" mode Chris Metcalf
2015-05-08 17:58   ` Chris Metcalf
2015-05-08 17:58 ` [PATCH 2/6] nohz: dataplane: allow tick to be fully disabled for dataplane Chris Metcalf
2015-05-12  9:26   ` Peter Zijlstra
2015-05-12 13:12     ` Paul E. McKenney
2015-05-14 20:55       ` Chris Metcalf
2015-05-08 17:58 ` [PATCH 3/6] dataplane nohz: run softirqs synchronously on user entry Chris Metcalf
2015-05-09  7:04   ` Mike Galbraith
2015-05-11 20:13     ` Chris Metcalf
2015-05-12  2:21       ` Mike Galbraith
2015-05-12  9:28       ` Peter Zijlstra
2015-05-12  9:32       ` Peter Zijlstra
2015-05-12 13:08         ` Paul E. McKenney
2015-05-08 17:58 ` [PATCH 4/6] nohz: support PR_DATAPLANE_QUIESCE Chris Metcalf
2015-05-08 17:58   ` Chris Metcalf
     [not found]   ` <1431107927-13998-5-git-send-email-cmetcalf-d5a29ZRxExrQT0dZR+AlfA@public.gmane.org>
2015-05-12  9:33     ` Peter Zijlstra
2015-05-12  9:33       ` Peter Zijlstra
     [not found]       ` <20150512093349.GH21418-ndre7Fmf5hadTX5a5knrm8zTDFooKrT+cvkQGrU6aU0@public.gmane.org>
2015-05-12  9:50         ` Ingo Molnar
2015-05-12  9:50           ` Ingo Molnar
     [not found]           ` <20150512095030.GD11477-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2015-05-12 10:38             ` Peter Zijlstra
2015-05-12 10:38               ` Peter Zijlstra
2015-05-12 12:52               ` Ingo Molnar
2015-05-13  4:35                 ` Andy Lutomirski
2015-05-13 17:51                   ` Paul E. McKenney
     [not found]                     ` <20150513175150.GL6776-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8@public.gmane.org>
2015-05-14 20:55                       ` Chris Metcalf
2015-05-14 20:55                         ` Chris Metcalf
2015-05-14 20:54       ` Chris Metcalf
2015-05-14 20:54         ` Chris Metcalf
2015-05-08 17:58 ` [PATCH 5/6] nohz: support PR_DATAPLANE_STRICT mode Chris Metcalf
2015-05-08 17:58   ` Chris Metcalf
2015-05-09  7:28   ` Andy Lutomirski
2015-05-09 10:37     ` Gilad Ben Yossef
2015-05-09 10:37       ` Gilad Ben Yossef
     [not found]     ` <CALCETrUoptUPVUxL87jUgry1pFac0rDPpnZ790zDKyK4a0FARA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-05-11 19:13       ` Chris Metcalf
2015-05-11 19:13         ` Chris Metcalf
2015-05-11 22:28         ` Andy Lutomirski
2015-05-12 21:06           ` Chris Metcalf
2015-05-12 22:23             ` Andy Lutomirski
2015-05-15 21:25               ` Chris Metcalf
2015-05-12  9:38   ` Peter Zijlstra
     [not found]     ` <20150512093858.GI21418-ndre7Fmf5hadTX5a5knrm8zTDFooKrT+cvkQGrU6aU0@public.gmane.org>
2015-05-12 13:20       ` Paul E. McKenney
2015-05-12 13:20         ` Paul E. McKenney
2015-05-08 17:58 ` [PATCH 6/6] nohz: add dataplane_debug boot flag Chris Metcalf
     [not found] ` <1431107927-13998-1-git-send-email-cmetcalf-d5a29ZRxExrQT0dZR+AlfA@public.gmane.org>
2015-05-08 21:18   ` [PATCH 0/6] support "dataplane" mode for nohz_full Andrew Morton
2015-05-08 21:18     ` Andrew Morton
2015-05-08 21:22     ` Steven Rostedt
2015-05-08 21:22       ` Steven Rostedt
     [not found]       ` <20150508172210.559830a9-f9ZlEuEWxVcJvu8Pb33WZ0EMvNT87kid@public.gmane.org>
2015-05-08 23:11         ` Chris Metcalf
2015-05-08 23:11           ` Chris Metcalf
2015-05-08 23:19           ` Andrew Morton
2015-05-08 23:19             ` Andrew Morton
2015-05-09  7:05             ` Ingo Molnar
     [not found]               ` <20150509070538.GA9413-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2015-05-09  7:19                 ` Andy Lutomirski
2015-05-09  7:19                   ` Andy Lutomirski
     [not found]                   ` <CALCETrXavog018+xLacXeBLaMLjWtqk0bMU5fUzZ+pkwgu7Y3A-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-05-11 19:54                     ` Chris Metcalf
2015-05-11 19:54                       ` Chris Metcalf
     [not found]                       ` <555108FC.3060200-d5a29ZRxExrQT0dZR+AlfA@public.gmane.org>
2015-05-11 22:15                         ` Andy Lutomirski
2015-05-11 22:15                           ` Andy Lutomirski
     [not found]                   ` <55510885.9070101@ezchip.com>
2015-05-12 13:18                     ` Paul E. McKenney
2015-05-09  7:19                 ` Mike Galbraith
2015-05-09  7:19                   ` Mike Galbraith
     [not found]                   ` <1431155983.3209.131.camel-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2015-05-09 10:18                     ` Gilad Ben Yossef
2015-05-09 10:18                       ` Gilad Ben Yossef
2015-05-11 12:57                 ` Steven Rostedt
2015-05-11 12:57                   ` Steven Rostedt
2015-05-11 15:36                   ` Frederic Weisbecker
2015-05-11 19:19                     ` Mike Galbraith
2015-05-11 19:25                       ` Chris Metcalf
2015-05-11 19:25                         ` Chris Metcalf
2015-05-12  1:47                         ` Mike Galbraith
2015-05-12  4:35                           ` Mike Galbraith
2015-05-15 15:05                           ` Chris Metcalf
2015-05-15 18:44                             ` Mike Galbraith
2015-05-26 19:51                               ` Chris Metcalf
2015-05-27  3:28                                 ` Mike Galbraith
2015-05-11 17:19                   ` Paul E. McKenney
2015-05-11 17:27                     ` Andrew Morton
2015-05-11 17:33                       ` Frederic Weisbecker
2015-05-11 18:00                         ` Steven Rostedt
2015-05-11 18:09                           ` Chris Metcalf
2015-05-11 18:09                             ` Chris Metcalf
     [not found]                             ` <5550F077.6030906-d5a29ZRxExrQT0dZR+AlfA@public.gmane.org>
2015-05-11 18:36                               ` Steven Rostedt
2015-05-11 18:36                                 ` Steven Rostedt
2015-05-12  9:10                             ` CONFIG_ISOLATION=y (was: [PATCH 0/6] support "dataplane" mode for nohz_full) Ingo Molnar
     [not found]                               ` <20150512091032.GA10138-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2015-05-12 11:48                                 ` Peter Zijlstra
2015-05-12 11:48                                   ` Peter Zijlstra
2015-05-12 12:34                                   ` Ingo Molnar
     [not found]                                     ` <20150512123440.GA16959-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2015-05-12 12:39                                       ` Peter Zijlstra
2015-05-12 12:39                                         ` Peter Zijlstra
     [not found]                                         ` <20150512123912.GO21418-ndre7Fmf5hadTX5a5knrm8zTDFooKrT+cvkQGrU6aU0@public.gmane.org>
2015-05-12 12:43                                           ` Ingo Molnar
2015-05-12 12:43                                             ` Ingo Molnar
2015-05-12 15:36                                     ` Frederic Weisbecker
2015-05-12 21:05                               ` CONFIG_ISOLATION=y Chris Metcalf
2015-05-12 21:05                                 ` CONFIG_ISOLATION=y Chris Metcalf
     [not found]                   ` <20150511085759.71deeb64-f9ZlEuEWxVcJvu8Pb33WZ0EMvNT87kid@public.gmane.org>
2015-05-12 10:46                     ` [PATCH 0/6] support "dataplane" mode for nohz_full Peter Zijlstra
2015-05-12 10:46                       ` Peter Zijlstra
2015-05-15 15:10                       ` Chris Metcalf
2015-05-15 15:10                         ` Chris Metcalf
2015-05-15 21:26   ` [PATCH v2 0/5] support "cpu_isolated" " Chris Metcalf
2015-05-15 21:26     ` Chris Metcalf
2015-05-15 21:27     ` [PATCH v2 1/5] nohz_full: add support for "cpu_isolated" mode Chris Metcalf
2015-05-15 21:27       ` Chris Metcalf
2015-05-15 21:27       ` [PATCH v2 2/5] nohz: support PR_CPU_ISOLATED_STRICT mode Chris Metcalf
2015-05-15 21:27         ` Chris Metcalf
2015-05-15 21:27       ` [PATCH v2 4/5] nohz: add cpu_isolated_debug boot flag Chris Metcalf
2015-05-15 21:27       ` [PATCH v2 5/5] nohz: cpu_isolated: allow tick to be fully disabled Chris Metcalf
     [not found]       ` <1431725251-20943-1-git-send-email-cmetcalf-d5a29ZRxExrQT0dZR+AlfA@public.gmane.org>
2015-05-15 21:27         ` [PATCH v2 3/5] nohz: cpu_isolated strict mode configurable signal Chris Metcalf
2015-05-15 21:27           ` Chris Metcalf
2015-05-15 22:17         ` [PATCH v2 1/5] nohz_full: add support for "cpu_isolated" mode Thomas Gleixner
2015-05-15 22:17           ` Thomas Gleixner
2015-05-28 20:38           ` Chris Metcalf
2015-05-28 20:38             ` Chris Metcalf
     [not found]     ` <1431725178-20876-1-git-send-email-cmetcalf-d5a29ZRxExrQT0dZR+AlfA@public.gmane.org>
2015-06-03 15:29       ` [PATCH v3 0/5] support "cpu_isolated" mode for nohz_full Chris Metcalf
2015-06-03 15:29         ` Chris Metcalf
     [not found]         ` <1433345365-29506-1-git-send-email-cmetcalf-d5a29ZRxExrQT0dZR+AlfA@public.gmane.org>
2015-06-03 15:29           ` [PATCH v3 1/5] nohz_full: add support for "cpu_isolated" mode Chris Metcalf
2015-06-03 15:29             ` Chris Metcalf
2015-06-03 15:29           ` [PATCH v3 3/5] nohz: cpu_isolated strict mode configurable signal Chris Metcalf
2015-06-03 15:29             ` Chris Metcalf
2015-06-03 15:29         ` [PATCH v3 2/5] nohz: support PR_CPU_ISOLATED_STRICT mode Chris Metcalf
2015-06-03 15:29           ` Chris Metcalf
2015-06-03 15:29         ` [PATCH v3 4/5] nohz: add cpu_isolated_debug boot flag Chris Metcalf
2015-06-03 15:29         ` [PATCH v3 5/5] nohz: cpu_isolated: allow tick to be fully disabled Chris Metcalf
2015-07-13 19:57         ` [PATCH v4 0/5] support "cpu_isolated" mode for nohz_full Chris Metcalf
2015-07-13 19:57           ` Chris Metcalf
2015-07-13 19:57           ` [PATCH v4 1/5] nohz_full: add support for "cpu_isolated" mode Chris Metcalf
2015-07-13 19:57             ` Chris Metcalf
2015-07-13 20:40             ` Andy Lutomirski
2015-07-13 21:01               ` Chris Metcalf
2015-07-13 21:45                 ` Andy Lutomirski
2015-07-21 19:10                   ` Chris Metcalf
2015-07-21 19:26                     ` Andy Lutomirski
     [not found]                       ` <CALCETrVoHvofNHG81Q2Vb2i1qc7f2dy=qgkyb5NWNfUgYxhE8Q-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-07-21 20:36                         ` Paul E. McKenney
2015-07-21 20:36                           ` Paul E. McKenney
2015-07-22 13:57                           ` Christoph Lameter
     [not found]                             ` <alpine.DEB.2.11.1507220856030.17411-wcBtFHqTun5QOdAKl3ChDw@public.gmane.org>
2015-07-22 19:28                               ` Paul E. McKenney
2015-07-22 19:28                                 ` Paul E. McKenney
2015-07-22 20:02                                 ` Christoph Lameter
2015-07-24 20:21                                   ` Chris Metcalf
2015-07-24 20:22                       ` Chris Metcalf
2015-07-24 14:03                     ` Frederic Weisbecker
2015-07-24 20:19                       ` Chris Metcalf
2015-07-24 13:27             ` Frederic Weisbecker
2015-07-24 20:21               ` Chris Metcalf
2015-07-24 20:21                 ` Chris Metcalf
2015-07-13 19:57           ` [PATCH v4 2/5] nohz: support PR_CPU_ISOLATED_STRICT mode Chris Metcalf
2015-07-13 19:57             ` Chris Metcalf
     [not found]             ` <1436817481-8732-3-git-send-email-cmetcalf-d5a29ZRxExrQT0dZR+AlfA@public.gmane.org>
2015-07-13 21:47               ` Andy Lutomirski
2015-07-13 21:47                 ` Andy Lutomirski
     [not found]                 ` <CALCETrUvg+Dix=jG2_1J=mgQC+uRk4dthCYDcb4E5ooEfQjqtQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-07-21 19:34                   ` Chris Metcalf
2015-07-21 19:34                     ` Chris Metcalf
     [not found]                     ` <55AE9EAC.4010202-d5a29ZRxExrQT0dZR+AlfA@public.gmane.org>
2015-07-21 19:42                       ` Andy Lutomirski
2015-07-21 19:42                         ` Andy Lutomirski
2015-07-24 20:29                         ` Chris Metcalf
2015-07-13 19:57           ` [PATCH v4 3/5] nohz: cpu_isolated strict mode configurable signal Chris Metcalf
2015-07-13 19:57             ` Chris Metcalf
2015-07-13 19:58           ` [PATCH v4 4/5] nohz: add cpu_isolated_debug boot flag Chris Metcalf
2015-07-13 19:58           ` [PATCH v4 5/5] nohz: cpu_isolated: allow tick to be fully disabled Chris Metcalf
     [not found]           ` <1436817481-8732-1-git-send-email-cmetcalf-d5a29ZRxExrQT0dZR+AlfA@public.gmane.org>
2015-07-28 19:49             ` [PATCH v5 0/6] support "cpu_isolated" mode for nohz_full Chris Metcalf
2015-07-28 19:49               ` Chris Metcalf
2015-07-28 19:49               ` [PATCH v5 1/6] vmstat: provide a function to quiet down the diff processing Chris Metcalf
2015-07-28 19:49               ` [PATCH v5 2/6] cpu_isolated: add initial support Chris Metcalf
2015-07-28 19:49                 ` Chris Metcalf
     [not found]                 ` <1438112980-9981-3-git-send-email-cmetcalf-d5a29ZRxExrQT0dZR+AlfA@public.gmane.org>
2015-08-12 16:00                   ` Frederic Weisbecker
2015-08-12 16:00                     ` Frederic Weisbecker
2015-08-12 18:22                     ` Chris Metcalf
2015-08-12 18:22                       ` Chris Metcalf
     [not found]                       ` <55CB8ED1.6030806-d5a29ZRxExrQT0dZR+AlfA@public.gmane.org>
2015-08-26 15:26                         ` Frederic Weisbecker
2015-08-26 15:26                           ` Frederic Weisbecker
2015-08-26 15:55                           ` Chris Metcalf
2015-08-26 15:55                             ` Chris Metcalf
2015-07-28 19:49               ` [PATCH v5 3/6] cpu_isolated: support PR_CPU_ISOLATED_STRICT mode Chris Metcalf
2015-07-28 19:49                 ` Chris Metcalf
2015-07-28 19:49               ` [PATCH v5 4/6] cpu_isolated: provide strict mode configurable signal Chris Metcalf
2015-07-28 19:49                 ` Chris Metcalf
2015-07-28 19:49               ` [PATCH v5 5/6] cpu_isolated: add debug boot flag Chris Metcalf
2015-07-28 19:49               ` [PATCH v5 6/6] nohz: cpu_isolated: allow tick to be fully disabled Chris Metcalf
2015-08-25 19:55               ` [PATCH v6 0/6] support "task_isolated" mode for nohz_full Chris Metcalf
2015-08-25 19:55                 ` Chris Metcalf
2015-08-25 19:55                 ` [PATCH v6 1/6] vmstat: provide a function to quiet down the diff processing Chris Metcalf
2015-08-25 19:55                 ` [PATCH v6 2/6] task_isolation: add initial support Chris Metcalf
2015-08-25 19:55                   ` Chris Metcalf
2015-08-25 19:55                 ` [PATCH v6 3/6] task_isolation: support PR_TASK_ISOLATION_STRICT mode Chris Metcalf
2015-08-25 19:55                   ` Chris Metcalf
2015-08-26 10:36                   ` Will Deacon
2015-08-26 15:10                     ` Chris Metcalf
     [not found]                       ` <55DDD6EA.3070307-d5a29ZRxExrQT0dZR+AlfA@public.gmane.org>
2015-09-02 10:13                         ` Will Deacon
2015-09-02 10:13                           ` Will Deacon
2015-08-28 15:31                     ` [PATCH v6.1 " Chris Metcalf
2015-08-28 15:31                       ` Chris Metcalf
     [not found]                 ` <1440532555-15492-1-git-send-email-cmetcalf-d5a29ZRxExrQT0dZR+AlfA@public.gmane.org>
2015-08-25 19:55                   ` [PATCH v6 4/6] task_isolation: provide strict mode configurable signal Chris Metcalf
2015-08-25 19:55                     ` Chris Metcalf
2015-08-28 19:22                     ` Andy Lutomirski
     [not found]                       ` <20150902101347.GF25720-5wv7dgnIgG8@public.gmane.org>
2015-09-02 18:38                         ` [PATCH v6.2 3/6] task_isolation: support PR_TASK_ISOLATION_STRICT mode Chris Metcalf
2015-09-02 18:38                           ` Chris Metcalf
2015-08-25 19:55                 ` [PATCH v6 5/6] task_isolation: add debug boot flag Chris Metcalf
2015-08-25 19:55                 ` [PATCH v6 6/6] nohz: task_isolation: allow tick to be fully disabled Chris Metcalf
2015-09-28 15:17                 ` [PATCH v7 00/11] support "task_isolated" mode for nohz_full Chris Metcalf
2015-09-28 15:17                   ` Chris Metcalf
2015-09-28 15:17                   ` [PATCH v7 01/11] vmstat: provide a function to quiet down the diff processing Chris Metcalf
2015-09-28 15:17                   ` [PATCH v7 02/11] task_isolation: add initial support Chris Metcalf
2015-09-28 15:17                     ` Chris Metcalf
2015-10-01 12:14                     ` Frederic Weisbecker
2015-10-01 12:18                       ` Thomas Gleixner
2015-10-01 12:23                         ` Frederic Weisbecker
2015-10-01 12:31                           ` Thomas Gleixner
2015-10-01 17:02                         ` Chris Metcalf
2015-10-01 17:02                           ` Chris Metcalf
     [not found]                           ` <560D6725.9000609-d5a29ZRxExrQT0dZR+AlfA@public.gmane.org>
2015-10-01 21:20                             ` Thomas Gleixner
2015-10-01 21:20                               ` Thomas Gleixner
2015-10-02 17:15                               ` Chris Metcalf
2015-10-02 17:15                                 ` Chris Metcalf
     [not found]                                 ` <560EBBC5.7000709-d5a29ZRxExrQT0dZR+AlfA@public.gmane.org>
2015-10-02 19:02                                   ` Thomas Gleixner
2015-10-02 19:02                                     ` Thomas Gleixner
2015-10-01 19:25                       ` Chris Metcalf
2015-10-01 19:25                         ` Chris Metcalf
2015-09-28 15:17                   ` [PATCH v7 03/11] task_isolation: support PR_TASK_ISOLATION_STRICT mode Chris Metcalf
2015-09-28 15:17                     ` Chris Metcalf
     [not found]                     ` <1443453446-7827-4-git-send-email-cmetcalf-d5a29ZRxExrQT0dZR+AlfA@public.gmane.org>
2015-09-28 20:51                       ` Andy Lutomirski
2015-09-28 20:51                         ` Andy Lutomirski
2015-09-28 21:54                         ` Chris Metcalf
2015-09-28 22:38                           ` Andy Lutomirski
2015-09-29 17:35                             ` Chris Metcalf
     [not found]                               ` <560ACBD9.90909-d5a29ZRxExrQT0dZR+AlfA@public.gmane.org>
2015-09-29 17:46                                 ` Andy Lutomirski
2015-09-29 17:46                                   ` Andy Lutomirski
     [not found]                                   ` <CALCETrUp+8UG5dKLdybcmhhfzcyUP8h-RJHcG0Bo7Up=Rx6DVA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-09-29 17:57                                     ` Chris Metcalf
2015-09-29 17:57                                       ` Chris Metcalf
2015-09-29 18:00                                       ` Andy Lutomirski
     [not found]                                         ` <CALCETrVrHFh_wW_u0E+3mcN9J7_M+hAF59CdKOzKt3NT+gWJgg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-10-01 19:25                                           ` Chris Metcalf
2015-10-01 19:25                                             ` Chris Metcalf
2015-09-28 15:17                   ` [PATCH v7 04/11] task_isolation: provide strict mode configurable signal Chris Metcalf
2015-09-28 15:17                     ` Chris Metcalf
2015-09-28 20:54                     ` Andy Lutomirski
     [not found]                       ` <CALCETrXaWaUwWnOz16RAqjFP9tZm=tp74xWacXjqa36TWB9BfQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-09-28 21:54                         ` Chris Metcalf
2015-09-28 21:54                           ` Chris Metcalf
2015-09-28 15:17                   ` [PATCH v7 05/11] task_isolation: add debug boot flag Chris Metcalf
2015-09-28 20:59                     ` Andy Lutomirski
2015-09-28 21:55                       ` Chris Metcalf
2015-09-28 22:40                         ` Andy Lutomirski
2015-09-29 17:35                           ` Chris Metcalf
2015-10-05 17:07                     ` Luiz Capitulino
2015-10-08  0:33                       ` Chris Metcalf
2015-10-08 20:28                         ` Luiz Capitulino
2015-09-28 15:17                   ` [PATCH v7 06/11] nohz: task_isolation: allow tick to be fully disabled Chris Metcalf
2015-09-28 20:40                     ` Andy Lutomirski
2015-10-01 13:07                       ` Frederic Weisbecker
2015-10-01 14:13                         ` Thomas Gleixner
2015-09-28 15:17                   ` [PATCH v7 07/11] arch/x86: enable task isolation functionality Chris Metcalf
2015-09-28 20:59                     ` Andy Lutomirski
2015-09-28 21:57                       ` Chris Metcalf [this message]
2015-09-28 22:43                         ` Andy Lutomirski
2015-09-29 17:42                           ` Chris Metcalf
2015-09-29 17:57                             ` Andy Lutomirski
2015-09-30 20:25                               ` Thomas Gleixner
2015-09-30 20:58                                 ` Chris Metcalf
2015-09-30 22:02                                   ` Thomas Gleixner
2015-09-30 22:11                                     ` Andy Lutomirski
2015-10-01  8:12                                       ` Thomas Gleixner
2015-10-01  9:08                                         ` Christoph Lameter
2015-10-01 10:10                                           ` Thomas Gleixner
2015-10-01 19:25                                         ` Chris Metcalf
2015-09-28 15:17                   ` [PATCH v7 08/11] arch/arm64: adopt prepare_exit_to_usermode() model from x86 Chris Metcalf
2015-09-28 15:17                     ` Chris Metcalf
2015-09-28 15:17                   ` [PATCH v7 09/11] arch/arm64: enable task isolation functionality Chris Metcalf
2015-09-28 15:17                     ` Chris Metcalf
2015-09-28 15:17                   ` [PATCH v7 10/11] arch/tile: adopt prepare_exit_to_usermode() model from x86 Chris Metcalf
2015-09-28 15:17                   ` [PATCH v7 11/11] arch/tile: enable task isolation functionality Chris Metcalf
2015-10-20 20:35                   ` [PATCH v8 00/14] support "task_isolation" mode for nohz_full Chris Metcalf
2015-10-20 20:35                     ` Chris Metcalf
2015-10-20 20:35                     ` [PATCH v8 01/14] vmstat: provide a function to quiet down the diff processing Chris Metcalf
2015-10-20 20:36                     ` [PATCH v8 02/14] vmstat: add vmstat_idle function Chris Metcalf
2015-10-20 20:45                       ` Christoph Lameter
2015-10-20 20:36                     ` [PATCH v8 03/14] lru_add_drain_all: factor out lru_add_drain_needed Chris Metcalf
2015-10-20 20:36                       ` Chris Metcalf
2015-10-20 20:36                     ` [PATCH v8 04/14] task_isolation: add initial support Chris Metcalf
2015-10-20 20:36                       ` Chris Metcalf
2015-10-20 20:56                       ` Andy Lutomirski
     [not found]                         ` <CALCETrWzhrYreizoKG0w6Jtz3RLFjNx9Qk_JLykcLLUQcCXBEA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-10-20 21:20                           ` Chris Metcalf
2015-10-20 21:20                             ` Chris Metcalf
     [not found]                             ` <5626B00E.3010309-d5a29ZRxExrQT0dZR+AlfA@public.gmane.org>
2015-10-20 21:26                               ` Andy Lutomirski
2015-10-20 21:26                                 ` Andy Lutomirski
     [not found]                                 ` <CALCETrX6e+mqfy-rNV3sA8xGVDNHviQ9vHBBhAPULeLecno7XQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-10-21  0:29                                   ` Steven Rostedt
2015-10-21  0:29                                     ` Steven Rostedt
2015-10-26 20:19                                     ` Chris Metcalf
2015-10-26 21:13                                     ` Chris Metcalf
2015-10-26 20:32                                 ` Chris Metcalf
     [not found]                       ` <1445373372-6567-5-git-send-email-cmetcalf-d5a29ZRxExrQT0dZR+AlfA@public.gmane.org>
2015-10-21 16:12                         ` Frederic Weisbecker
2015-10-21 16:12                           ` Frederic Weisbecker
2015-10-27 16:40                           ` Chris Metcalf
2015-10-27 16:40                             ` Chris Metcalf
     [not found]                             ` <562FA8FD.8080502-d5a29ZRxExrQT0dZR+AlfA@public.gmane.org>
2016-01-28 16:38                               ` Frederic Weisbecker
2016-01-28 16:38                                 ` Frederic Weisbecker
2016-02-11 19:58                                 ` Chris Metcalf
2016-02-11 19:58                                   ` Chris Metcalf
2015-10-20 20:36                     ` [PATCH v8 05/14] task_isolation: support PR_TASK_ISOLATION_STRICT mode Chris Metcalf
2015-10-20 20:36                       ` Chris Metcalf
2015-10-20 20:36                     ` [PATCH v8 06/14] task_isolation: provide strict mode configurable signal Chris Metcalf
2015-10-20 20:36                       ` Chris Metcalf
2015-10-21  0:56                       ` Steven Rostedt
2015-10-21  0:56                         ` Steven Rostedt
     [not found]                         ` <20151020205610.51b3d742-2kNGR76GQU9OHLTnHDQRgA@public.gmane.org>
2015-10-21  1:30                           ` Chris Metcalf
2015-10-21  1:30                             ` Chris Metcalf
2015-10-21  1:41                             ` Steven Rostedt
2015-10-21  1:41                               ` Steven Rostedt
2015-10-21  1:42                             ` Andy Lutomirski
     [not found]                               ` <CALCETrXqDi24EPn79X9SXuz+5sYGZBF3yCRzb8PwdL=YbxVujw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-10-21  6:41                                 ` Gilad Ben Yossef
2015-10-21  6:41                                   ` Gilad Ben Yossef
2015-10-21 18:53                                   ` Andy Lutomirski
2015-10-22 20:44                                     ` Chris Metcalf
2015-10-22 21:00                                       ` Andy Lutomirski
     [not found]                                         ` <CALCETrVQXwYwhEwbJsvN18w8qD-qVVCQAa8b9RcXD=RmXSqLiQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-10-27 19:37                                           ` Chris Metcalf
2015-10-27 19:37                                             ` Chris Metcalf
     [not found]                                     ` <CALCETrVuE_VCk-7_VMJ-orL8pg+0F5vq6qvt4SfgXzt_MRr-SQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-10-24  9:16                                       ` Gilad Ben Yossef
2015-10-24  9:16                                         ` Gilad Ben Yossef
2015-10-20 20:36                     ` [PATCH v8 07/14] task_isolation: add debug boot flag Chris Metcalf
2015-10-20 20:36                     ` [PATCH v8 08/14] nohz_full: allow disabling the 1Hz minimum tick at boot Chris Metcalf
2015-10-20 21:03                       ` Frederic Weisbecker
2015-10-20 21:18                         ` Chris Metcalf
2015-10-21  0:59                           ` Steven Rostedt
2015-10-21  6:56                         ` Gilad Ben Yossef
2015-10-21 14:28                         ` Christoph Lameter
2015-10-21 15:35                           ` Frederic Weisbecker
2015-10-20 20:36                     ` [PATCH v8 09/14] arch/x86: enable task isolation functionality Chris Metcalf
2015-10-20 20:36                     ` [PATCH v8 10/14] arch/arm64: adopt prepare_exit_to_usermode() model from x86 Chris Metcalf
2015-10-20 20:36                       ` Chris Metcalf
2015-10-20 20:36                     ` [PATCH v8 11/14] arch/arm64: enable task isolation functionality Chris Metcalf
2015-10-20 20:36                       ` Chris Metcalf
2015-10-20 20:36                     ` [PATCH v8 12/14] arch/tile: adopt prepare_exit_to_usermode() model from x86 Chris Metcalf
2015-10-20 20:36                     ` [PATCH v8 13/14] arch/tile: turn off timer tick for oneshot_stopped state Chris Metcalf
2015-10-20 20:36                     ` [PATCH v8 14/14] arch/tile: enable task isolation functionality Chris Metcalf
2015-10-21 12:39                     ` [PATCH v8 00/14] support "task_isolation" mode for nohz_full Peter Zijlstra
2015-10-22 20:31                       ` Chris Metcalf
2015-10-22 20:31                         ` Chris Metcalf
2015-10-23  2:33                         ` Frederic Weisbecker
2015-10-23  8:49                           ` Peter Zijlstra
2015-10-23 13:29                             ` Frederic Weisbecker
     [not found]                         ` <562947B0.7050103-d5a29ZRxExrQT0dZR+AlfA@public.gmane.org>
2015-10-23  9:04                           ` Peter Zijlstra
2015-10-23  9:04                             ` Peter Zijlstra
2015-10-23 11:52                             ` Theodore Ts'o

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=5609B7C0.3010807@ezchip.com \
    --to=cmetcalf@ezchip.com \
    --cc=akpm@linux-foundation.org \
    --cc=catalin.marinas@arm.com \
    --cc=cl@linux.com \
    --cc=fweisbec@gmail.com \
    --cc=giladb@ezchip.com \
    --cc=hpa@zytor.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=luto@amacapital.net \
    --cc=mingo@kernel.org \
    --cc=paulmck@linux.vnet.ibm.com \
    --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 \
    --cc=x86@kernel.org \
    /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: link
Be 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.