* [GIT PULL rcu/next] RCU commits for 3.5
@ 2012-05-11 18:42 Paul E. McKenney
2012-05-14 6:48 ` Ingo Molnar
2012-05-14 13:12 ` Peter Zijlstra
0 siblings, 2 replies; 3+ messages in thread
From: Paul E. McKenney @ 2012-05-11 18:42 UTC (permalink / raw)
To: mingo
Cc: linux-kernel, rostedt, dipankar, pascal.chapperon, davej, michel,
joern, jengelh, efault, sivanich, torvalds, peterz, laijs
Hello, Ingo,
The major features of this series are:
1. A set of improvements and fixes to the RCU_FAST_NO_HZ feature
(with more on the way for 3.6). Posted to LKML:
https://lkml.org/lkml/2012/4/23/324 (commits 1-3 and 5),
https://lkml.org/lkml/2012/4/16/611 (commit 4),
https://lkml.org/lkml/2012/4/30/390 (commit 6), and
https://lkml.org/lkml/2012/5/4/410 (commit 7, combined with
the other commits for the convenience of the tester).
2. Changes to make rcu_barrier() avoid disrupting execution of CPUs
that have no RCU callbacks. Posted to LKML:
https://lkml.org/lkml/2012/4/23/322.
3. A couple of commits that improve the efficiency of the interaction
between preemptible RCU and the scheduler, these two being all
that survived an abortive attempt to allow preemptible RCU's
__rcu_read_lock() to be inlined. The full set was posted to
LKML at https://lkml.org/lkml/2012/4/14/143, and the first and
third patches of that set remain.
4. Lai Jiangshan's algorithmic implementation of SRCU, which includes
call_srcu() and srcu_barrier(). A major feature of this new
implementation is that synchronize_srcu() no longer disturbs
the execution of other CPUs. This work is based on earlier
implementations by Peter Zijlstra and myself. Posted to
LKML: https://lkml.org/lkml/2012/2/22/82.
5. A number of miscellaneous bug fixes and improvements which were
posted to LKML at: https://lkml.org/lkml/2012/4/23/353 with
subsequent updates posted to LKML.
#1 and #2 are combined onto one topic branch due to dependencies among
the commits.
All of these have been exposed to -next testing.
These changes are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu.git rcu/next
Thanx, Paul
-------------------->
Dave Jones (1):
rcu: List-debug variants of rcu list routines.
Jan Engelhardt (1):
rcu: Make __kfree_rcu() less dependent on compiler choices
Lai Jiangshan (10):
rcu: Remove fast check path from __synchronize_srcu()
rcu: Increment upper bit only for srcu_read_lock()
rcu: Flip ->completed only once per SRCU grace period
rcu: Improve SRCU's wait_idx() comments
rcu: Implement a variant of Peter's SRCU algorithm
rcu: Remove unused srcu_barrier()
rcu: Improve srcu_readers_active_idx()'s cache locality
rcu: Use single value to handle expedited SRCU grace periods
rcu: Implement per-domain single-threaded call_srcu() state machine
rcu: Add rcutorture test for call_srcu()
Michel Machado (1):
rcu: Replace list_first_entry_rcu() with list_first_or_null_rcu()
Paul E. McKenney (20):
rcu: Clarify help text for RCU_BOOST_PRIO
rcu: Reduce cache-miss initialization latencies for large systems
rcu: Document kernel command-line parameters
rcu: Document why rcu_blocking_is_gp() is safe
rcu: Add RCU_FAST_NO_HZ tracing for idle exit
rcu: Make RCU_FAST_NO_HZ use timer rather than hrtimer
rcu: Make RCU_FAST_NO_HZ account for pauses out of idle
rcu: Fixes to rcutorture error handling and cleanup
rcu: Add warning for RCU_FAST_NO_HZ timer firing
timer: Fix mod_timer_pinned() header comment
rcu: Introduce rcutorture testing for rcu_barrier()
rcu: Direct algorithmic SRCU implementation
rcu: Ensure that RCU_FAST_NO_HZ timers expire on correct CPU
rcu: Move PREEMPT_RCU preemption to switch_to() invocation
rcu: Make exit_rcu() more precise and consolidate
rcu: Update RCU maintainership
rcu: Make RCU_FAST_NO_HZ handle timer migration
rcu: Explicitly initialize RCU_FAST_NO_HZ per-CPU variables
rcu: Make rcu_barrier() less disruptive
Merge branches 'barrier.2012.05.09a', 'fixes.2012.04.26a', 'inline.2012.05.02b' and 'srcu.2012.05.07b' into HEAD
Documentation/RCU/torture.txt | 15 +-
Documentation/kernel-parameters.txt | 88 ++++++-
MAINTAINERS | 14 +-
arch/um/drivers/mconsole_kern.c | 1 +
include/linux/rculist.h | 40 +++-
include/linux/rcupdate.h | 20 ++
include/linux/rcutiny.h | 11 -
include/linux/rcutree.h | 19 --
include/linux/sched.h | 10 +
include/linux/srcu.h | 48 +++-
include/trace/events/rcu.h | 2 +
init/Kconfig | 50 +++-
kernel/rcupdate.c | 28 ++
kernel/rcutiny_plugin.h | 16 -
kernel/rcutorture.c | 257 +++++++++++++++-
kernel/rcutree.c | 332 ++++++++++++++++------
kernel/rcutree.h | 23 +-
kernel/rcutree_plugin.h | 154 +++++++----
kernel/rcutree_trace.c | 4 +-
kernel/sched/core.c | 1 +
kernel/srcu.c | 548 +++++++++++++++++++++++++++-------
kernel/timer.c | 8 +-
lib/list_debug.c | 22 ++
23 files changed, 1358 insertions(+), 353 deletions(-)
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [GIT PULL rcu/next] RCU commits for 3.5
2012-05-11 18:42 [GIT PULL rcu/next] RCU commits for 3.5 Paul E. McKenney
@ 2012-05-14 6:48 ` Ingo Molnar
2012-05-14 13:12 ` Peter Zijlstra
1 sibling, 0 replies; 3+ messages in thread
From: Ingo Molnar @ 2012-05-14 6:48 UTC (permalink / raw)
To: Paul E. McKenney
Cc: mingo, linux-kernel, rostedt, dipankar, pascal.chapperon, davej,
michel, joern, jengelh, efault, sivanich, torvalds, peterz, laijs
* Paul E. McKenney <paulmck@linux.vnet.ibm.com> wrote:
> Hello, Ingo,
>
> The major features of this series are:
>
> 1. A set of improvements and fixes to the RCU_FAST_NO_HZ feature
> (with more on the way for 3.6). Posted to LKML:
> https://lkml.org/lkml/2012/4/23/324 (commits 1-3 and 5),
> https://lkml.org/lkml/2012/4/16/611 (commit 4),
> https://lkml.org/lkml/2012/4/30/390 (commit 6), and
> https://lkml.org/lkml/2012/5/4/410 (commit 7, combined with
> the other commits for the convenience of the tester).
> 2. Changes to make rcu_barrier() avoid disrupting execution of CPUs
> that have no RCU callbacks. Posted to LKML:
> https://lkml.org/lkml/2012/4/23/322.
> 3. A couple of commits that improve the efficiency of the interaction
> between preemptible RCU and the scheduler, these two being all
> that survived an abortive attempt to allow preemptible RCU's
> __rcu_read_lock() to be inlined. The full set was posted to
> LKML at https://lkml.org/lkml/2012/4/14/143, and the first and
> third patches of that set remain.
> 4. Lai Jiangshan's algorithmic implementation of SRCU, which includes
> call_srcu() and srcu_barrier(). A major feature of this new
> implementation is that synchronize_srcu() no longer disturbs
> the execution of other CPUs. This work is based on earlier
> implementations by Peter Zijlstra and myself. Posted to
> LKML: https://lkml.org/lkml/2012/2/22/82.
> 5. A number of miscellaneous bug fixes and improvements which were
> posted to LKML at: https://lkml.org/lkml/2012/4/23/353 with
> subsequent updates posted to LKML.
>
> #1 and #2 are combined onto one topic branch due to dependencies among
> the commits.
>
> All of these have been exposed to -next testing.
>
> These changes are available in the git repository at:
>
> git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu.git rcu/next
>
> Thanx, Paul
>
> -------------------->
> Dave Jones (1):
> rcu: List-debug variants of rcu list routines.
>
> Jan Engelhardt (1):
> rcu: Make __kfree_rcu() less dependent on compiler choices
>
> Lai Jiangshan (10):
> rcu: Remove fast check path from __synchronize_srcu()
> rcu: Increment upper bit only for srcu_read_lock()
> rcu: Flip ->completed only once per SRCU grace period
> rcu: Improve SRCU's wait_idx() comments
> rcu: Implement a variant of Peter's SRCU algorithm
> rcu: Remove unused srcu_barrier()
> rcu: Improve srcu_readers_active_idx()'s cache locality
> rcu: Use single value to handle expedited SRCU grace periods
> rcu: Implement per-domain single-threaded call_srcu() state machine
> rcu: Add rcutorture test for call_srcu()
>
> Michel Machado (1):
> rcu: Replace list_first_entry_rcu() with list_first_or_null_rcu()
>
> Paul E. McKenney (20):
> rcu: Clarify help text for RCU_BOOST_PRIO
> rcu: Reduce cache-miss initialization latencies for large systems
> rcu: Document kernel command-line parameters
> rcu: Document why rcu_blocking_is_gp() is safe
> rcu: Add RCU_FAST_NO_HZ tracing for idle exit
> rcu: Make RCU_FAST_NO_HZ use timer rather than hrtimer
> rcu: Make RCU_FAST_NO_HZ account for pauses out of idle
> rcu: Fixes to rcutorture error handling and cleanup
> rcu: Add warning for RCU_FAST_NO_HZ timer firing
> timer: Fix mod_timer_pinned() header comment
> rcu: Introduce rcutorture testing for rcu_barrier()
> rcu: Direct algorithmic SRCU implementation
> rcu: Ensure that RCU_FAST_NO_HZ timers expire on correct CPU
> rcu: Move PREEMPT_RCU preemption to switch_to() invocation
> rcu: Make exit_rcu() more precise and consolidate
> rcu: Update RCU maintainership
> rcu: Make RCU_FAST_NO_HZ handle timer migration
> rcu: Explicitly initialize RCU_FAST_NO_HZ per-CPU variables
> rcu: Make rcu_barrier() less disruptive
> Merge branches 'barrier.2012.05.09a', 'fixes.2012.04.26a', 'inline.2012.05.02b' and 'srcu.2012.05.07b' into HEAD
>
> Documentation/RCU/torture.txt | 15 +-
> Documentation/kernel-parameters.txt | 88 ++++++-
> MAINTAINERS | 14 +-
> arch/um/drivers/mconsole_kern.c | 1 +
> include/linux/rculist.h | 40 +++-
> include/linux/rcupdate.h | 20 ++
> include/linux/rcutiny.h | 11 -
> include/linux/rcutree.h | 19 --
> include/linux/sched.h | 10 +
> include/linux/srcu.h | 48 +++-
> include/trace/events/rcu.h | 2 +
> init/Kconfig | 50 +++-
> kernel/rcupdate.c | 28 ++
> kernel/rcutiny_plugin.h | 16 -
> kernel/rcutorture.c | 257 +++++++++++++++-
> kernel/rcutree.c | 332 ++++++++++++++++------
> kernel/rcutree.h | 23 +-
> kernel/rcutree_plugin.h | 154 +++++++----
> kernel/rcutree_trace.c | 4 +-
> kernel/sched/core.c | 1 +
> kernel/srcu.c | 548 +++++++++++++++++++++++++++-------
> kernel/timer.c | 8 +-
> lib/list_debug.c | 22 ++
> 23 files changed, 1358 insertions(+), 353 deletions(-)
Pulled, thanks a lot Paul!
Ingo
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [GIT PULL rcu/next] RCU commits for 3.5
2012-05-11 18:42 [GIT PULL rcu/next] RCU commits for 3.5 Paul E. McKenney
2012-05-14 6:48 ` Ingo Molnar
@ 2012-05-14 13:12 ` Peter Zijlstra
1 sibling, 0 replies; 3+ messages in thread
From: Peter Zijlstra @ 2012-05-14 13:12 UTC (permalink / raw)
To: paulmck
Cc: mingo, linux-kernel, rostedt, dipankar, pascal.chapperon, davej,
michel, joern, jengelh, efault, sivanich, torvalds, laijs
On Fri, 2012-05-11 at 11:42 -0700, Paul E. McKenney wrote:
> 4. Lai Jiangshan's algorithmic implementation of SRCU, which includes
> call_srcu() and srcu_barrier(). A major feature of this new
> implementation is that synchronize_srcu() no longer disturbs
> the execution of other CPUs. This work is based on earlier
> implementations by Peter Zijlstra and myself. Posted to
> LKML: https://lkml.org/lkml/2012/2/22/82.
Great, thanks! I've been manually merging rcu/srcu for a while, I guess
I can stop doing that now.
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2012-05-14 13:12 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-05-11 18:42 [GIT PULL rcu/next] RCU commits for 3.5 Paul E. McKenney
2012-05-14 6:48 ` Ingo Molnar
2012-05-14 13:12 ` Peter Zijlstra
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).