mbox series

[00/13] rcu/nocb updates v2

Message ID 20210223001011.127063-1-frederic@kernel.org
Headers show
Series rcu/nocb updates v2 | expand

Message

Frederic Weisbecker Feb. 23, 2021, 12:09 a.m. UTC
It's a v2 of the previous set (https://lore.kernel.org/lkml/20210128171222.131380-1-frederic@kernel.org/)
minus the patches already applied in rcu/dev. And this is based on 
latest rcu/dev.

Changelog since v1:

"rcu/nocb: Fix potential missed nocb_timer rearm"
	* Remove nocb_defer_wakeup reset from do_nocb_deferred_wakeup_common() (paulmck)
	* Only reset/del if the timer is actually armed
	* Add secondary potential cause for missed rearm in the changelog

"rcu/nocb: Disable bypass when CPU isn't completely offloaded"
	* Improve comments on state machine (paulmck)
	* Add comment (a full quote from Paul) explaining why early flush is enough (paulmck)
	* Move sanity check to the very end of deoffloading (paulmck)
	* Clarify some comments about nocb locking on de-offloading (paulmck)

"rcu/nocb: Remove stale comment above rcu_segcblist_offload()"
	* New patch, reported by (paulmck)

"rcu/nocb: Merge nocb_timer to the rdp leader"
	* Remove rcu_running_nocb_timer() and its use in rcu_rdp_is_offloaded()
	  debugging since the timer doesn't refer to any rdp offloading anymore.
	* Only delete nocb_timer when armed, in nocb_gp_wait()
	* Clarify some comments about nocb locking on de-offloading (paulmck)
	* Remove stale code "re-enabling" nocb timer on offloading. Not necessary
	  anymore and even buggy.

"timer: Revert "timer: Add timer_curr_running()""
	* New patch

git://git.kernel.org/pub/scm/linux/kernel/git/frederic/linux-dynticks.git
	rcu/dev-v2

HEAD: 925ee3076eb694db893e2c6664d90ad8fb9cb6e5

Thanks,
	Frederic
---

Frederic Weisbecker (13):
      rcu/nocb: Fix potential missed nocb_timer rearm
      rcu/nocb: Disable bypass when CPU isn't completely offloaded
      rcu/nocb: Remove stale comment above rcu_segcblist_offload()
      rcu/nocb: Move trace_rcu_nocb_wake() calls outside nocb_lock when possible
      rcu/nocb: Merge nocb_timer to the rdp leader
      timer: Revert "timer: Add timer_curr_running()"
      rcu/nocb: Directly call __wake_nocb_gp() from bypass timer
      rcu/nocb: Allow de-offloading rdp leader
      rcu/nocb: Cancel nocb_timer upon nocb_gp wakeup
      rcu/nocb: Delete bypass_timer upon nocb_gp wakeup
      rcu/nocb: Only cancel nocb timer if not polling
      rcu/nocb: Prepare for finegrained deferred wakeup
      rcu/nocb: Unify timers


 include/linux/rcu_segcblist.h |   7 +-
 include/linux/timer.h         |   2 -
 include/trace/events/rcu.h    |   1 +
 kernel/rcu/rcu_segcblist.c    |   3 +-
 kernel/rcu/tree.c             |   2 +-
 kernel/rcu/tree.h             |   9 +-
 kernel/rcu/tree_plugin.h      | 233 +++++++++++++++++++++++-------------------
 kernel/time/timer.c           |  14 ---
 8 files changed, 141 insertions(+), 130 deletions(-)