[PATCH tip/core/rcu 0/13] Miscellaneous fixes for 4.4

From: Paul E. McKenney
Date: Tue Oct 06 2015 - 12:13:24 EST


Hello!

This series contains miscellaneous fixes:

1. Export sched_setscheduler_nocheck() so that the new locktorture
rtmutex_lock tests can be run as modules, courtesy of Davidlohr
Bueso.

2. Use rcu_callback_t in call_rcu*() and friends to improve
readability and to make cscope able to find them, courtesy of
Boqun Feng.

3. Use call_rcu_func_t to replace explicit type equivalents when
defining RCU callback functions, courtesy of Boqun Feng.

4. Don't unnecessarily disable preemption for Tiny and Tree
RCU readers (only for preemptible RCU readers), courtesy
of Boqun Feng.

5. Eliminate boot-time panic when a silly boot-time fanout is
specified.

6. Add online/offline info to help debug stall-warning messages.

7. Move preemption disabling out of __srcu_read_lock() into
srcu_read_lock().

8. Finish folding ->fqs_state into ->gp_state, courtesy of Petr Mladek.

9. Correct comment for values of ->gp_state field.

10. Add rcu_pointer_handoff() to allow explicit marking of handing
off protection from RCU to some other means, such as locking
or reference counting.

11. Make list_entry_rcu() use lockless_dereference(), courtesy
of Patrick Marlier. Despite the fact that this patch
does nothing more than eliminate a single store and a
single load of an unshared stack variable it nevertheless
manages to provide a measurable performance increase:
http://people.csail.mit.edu/amatveev/RLU_SOSP2015.pdf

12. Remove deprecated rcu_lockdep_assert().

Thanx, Paul

------------------------------------------------------------------------

b/Documentation/kernel-parameters.txt | 9 +++--
b/include/linux/list.h | 5 +-
b/include/linux/list_bl.h | 5 +-
b/include/linux/list_nulls.h | 3 +
b/include/linux/rculist.h | 5 --
b/include/linux/rcupdate.h | 59 +++++++++++++++++-----------------
b/include/linux/rcutiny.h | 3 +
b/include/linux/rcutree.h | 2 -
b/include/linux/srcu.h | 5 ++
b/kernel/exit.c | 2 +
b/kernel/rcu/rcutorture.c | 6 +--
b/kernel/rcu/srcu.c | 4 --
b/kernel/rcu/tiny.c | 8 ++--
b/kernel/rcu/tree.c | 55 ++++++++++++++++++-------------
b/kernel/rcu/tree.h | 21 +++---------
b/kernel/rcu/tree_plugin.h | 10 ++++-
b/kernel/rcu/tree_trace.c | 2 -
b/kernel/rcu/update.c | 2 -
b/kernel/sched/core.c | 1
19 files changed, 111 insertions(+), 96 deletions(-)

--
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/