lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Date:	Tue, 6 Oct 2015 09:29:08 -0700
From:	"Paul E. McKenney" <paulmck@...ux.vnet.ibm.com>
To:	linux-kernel@...r.kernel.org
Cc:	mingo@...nel.org, jiangshanlai@...il.com, dipankar@...ibm.com,
	akpm@...ux-foundation.org, mathieu.desnoyers@...icios.com,
	josh@...htriplett.org, tglx@...utronix.de, peterz@...radead.org,
	rostedt@...dmis.org, dhowells@...hat.com, edumazet@...gle.com,
	dvhart@...ux.intel.com, fweisbec@...il.com, oleg@...hat.com,
	bobby.prani@...il.com
Subject: [PATCH tip/core/rcu 0/18] Expedited grace-period improvements for 4.4

Hello!

This commit continues the effort to reduce the OS jitter from RCU's
expedited grace-period primitives, while also loosening the coupling
between CPU hotplug and RCU's expedited grace-period primitives:

1.	Use rsp->expedited_wq instead of sync_rcu_preempt_exp_wq to
	enable later code consolidation.

2.	Move rcu_report_exp_rnp() to allow later code consolidation.

3.	Consolidate combining-tree bitmaks setup for the initialization
	portion of synchronize_rcu_expedited().

4.	Use single-stage IPI algorithm for preemptible-RCU expedited
	grace periods.

5.	Make synchronize_sched_expedited() use the combining tree
	to reduce memory contention when waiting for quiescent states.

6.	Rename ->qs_pending to ->core_needs_qs to better match this
	field's use.

7.	Invert ->passed_quiesce and rename to ->cpu_no_qs in order to
	enable later aggregate-OR for requests for normal and expedited
	grace periods.

8.	Make ->cpu_no_qs be a union for aggregate OR.

9.	Switch synchronize_sched_expedited() from stop-CPUs to IPI.

10.	Stop silencing lockdep false positive for expedited grace periods,
	given that synchronize_rcu_expedited() no longer invokes
	synchronize_sched_expedited(), eliminating the apparent deadlock.
	(Just for the record, there never was a real deadlock.)

11.	Stop excluding CPU hotplug in synchronize_sched_expedited().

12.	Remove try_get_online_cpus(), which is now no longer used.

13.	Bring sync_sched_exp_select_cpus() into alignment with
	sync_rcu_exp_select_cpus() as a first step towards consolidating
	them into one function.

14.	Consolidate expedited CPU selection, now that #13 enabled it.

15.	Add online/offline information to expedited stall warning message.

16.	Dump blocking tasks in expedited stall-warning messages.

17.	Enable stall warnings for synchronize_rcu_expedited().

18.	Improve synchronize_sched_expedited() CPU-hotplug handling.

							Thanx, Paul

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

 b/Documentation/RCU/trace.txt |   32 +-
 b/include/linux/cpu.h         |    2 
 b/include/linux/sched.h       |   10 
 b/kernel/cpu.c                |   13 
 b/kernel/rcu/tree.c           |  561 ++++++++++++++++++++++++++++++----------
 b/kernel/rcu/tree.h           |   50 ++-
 b/kernel/rcu/tree_plugin.h    |  579 ++++++++++++++++++++++--------------------
 b/kernel/rcu/tree_trace.c     |   10 
 8 files changed, 782 insertions(+), 475 deletions(-)

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

Powered by blists - more mailing lists