Re: [RFC PATCH 00/11] rcu: Userspace RCU extended quiescent state v2

From: Paul E. McKenney
Date: Mon Jul 16 2012 - 18:17:11 EST


On Wed, Jul 11, 2012 at 08:26:29PM +0200, Frederic Weisbecker wrote:
> Hi,
>
> There are significant changes this time. I reverted back to using
> a TIF flag to hook on syscalls slow path and put the hooks on
> high level exception handlers instead of low level ones.
>
> It makes the code more portable between x86-32 and x86-64, it
> makes the hooks clearer and easier to review and the overhead
> is lowered in the off-case. This can be even better if we use
> jump labels later.

Thank you, Frederic, I have queued these:

git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu.git rcu/idle

I had to rework patch 4 a bit to take into account that I dropped the
rcu_switch_from() patch, please check it to make sure that I didn't
rework it out of existence.

Thanx, Paul

> Thanks.
>
> git://github.com/fweisbec/linux-dynticks.git
> rcu/user-2
>
> Frederic Weisbecker (11):
> rcu: Settle config for userspace extended quiescent state
> rcu: Allow rcu_user_enter()/exit() to nest
> rcu: Ignore userspace extended quiescent state by default
> rcu: Switch task's syscall hooks on context switch
> x86: Syscall hooks for userspace RCU extended QS
> x86: Exception hooks for userspace RCU extended QS
> rcu: Exit RCU extended QS on kernel preemption after irq/exception
> rcu: Exit RCU extended QS on user preemption
> x86: Use the new schedule_user API on userspace preemption
> x86: Exit RCU extended QS on notify resume
> rcu: Userspace RCU extended QS selftest
>
> arch/Kconfig | 10 ++++++
> arch/um/drivers/mconsole_kern.c | 2 +-
> arch/x86/Kconfig | 1 +
> arch/x86/include/asm/rcu.h | 20 +++++++++++
> arch/x86/include/asm/thread_info.h | 10 ++++--
> arch/x86/kernel/entry_64.S | 8 ++--
> arch/x86/kernel/ptrace.c | 5 +++
> arch/x86/kernel/signal.c | 4 ++
> arch/x86/kernel/traps.c | 30 ++++++++++++----
> arch/x86/mm/fault.c | 13 ++++++-
> include/linux/rcupdate.h | 10 ++++++
> include/linux/sched.h | 20 ++++++-----
> init/Kconfig | 18 ++++++++++
> kernel/rcutree.c | 64 +++++++++++++++++++++++++++++++-----
> kernel/rcutree.h | 4 ++
> kernel/sched/core.c | 10 +++++-
> 16 files changed, 192 insertions(+), 37 deletions(-)
> create mode 100644 arch/x86/include/asm/rcu.h
>
> --
> 1.7.5.4
>

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/