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  linux-cve-announce  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]
Message-ID: <20150107175225.GA4237@linux.vnet.ibm.com>
Date:	Wed, 7 Jan 2015 09:52:25 -0800
From:	"Paul E. McKenney" <paulmck@...ux.vnet.ibm.com>
To:	linux-kernel@...r.kernel.org
Cc:	mingo@...nel.org, laijs@...fujitsu.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/9] Stall-warning changes for 3.20

Hello!

This series contains stall-warning changes, mostly inspired by the
long-running "frequent lockups in 3.18rc4" LKML thread, which may
be found at https://lkml.org/lkml/2014/11/14/656.  Those who denigrate
testing clearly have not been up against trinity.  ;-)

1.	Set default to RCU_CPU_STALL_INFO=y.  This is in preparation for
	eliminating this Kconfig variable entirely in a release or two.

2.	Add rcutorture scripting checks for stall ending before dump start.

3.	Make RCU_CPU_STALL_INFO include number of attempts to force
	quiescent states (which mostly identifies idle CPUs).

4.	Improve diagnostics for spurious RCU CPU stall warnings, for
	example, identifying when RCU's grace-period kthreads have
	been prevented from running.

5.	Handle gpnum/completed wrap while dyntick idle.  This is a
	long-standing known bug, but one that requires a CPU to remain
	idle for 4,294,967,296 grace periods on 32-bit systems, and
	lots more on 64-bit systems.  However, with the advent of
	NO_HZ_FULL, this sort of thing becomes more likely, so time
	to fix it.

6.	Run grace-period kthreads at real-time priority.  Not yet ready
	for mainline, but the 0day test robot reports that it greatly
	reduces the number of hangs seen in testing, so something sort
	of like it is needed.  This patch also reduced the number of
	stalls in the 3.18-rc4 efforts.

7.	Make cond_resched_rcu_qs() apply to normal RCU flavors, allowing
	it to be placed in long-running loops that would otherwise result
	in RCU CPU stall warnings.

8.	Add GP-kthread-starvation checks to CPU stall warnings, making
	previous encoded warnings more human-readable.

9.	Fix RCU CPU stall detection in tiny implementation, courtesy of
	Miroslav Benes.

10.	Initialize tiny RCU stall-warning timeouts at boot.

							Thanx, Paul

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

 b/Documentation/RCU/stallwarn.txt                         |   14 +
 b/Documentation/RCU/trace.txt                             |   32 +--
 b/include/linux/rcupdate.h                                |    3 
 b/include/linux/rcutiny.h                                 |    5 
 b/include/linux/rcutree.h                                 |    2 
 b/init/Kconfig                                            |    1 
 b/kernel/rcu/tiny.c                                       |    2 
 b/kernel/rcu/tiny_plugin.h                                |    7 
 b/kernel/rcu/tree.c                                       |  119 ++++++++++++--
 b/kernel/rcu/tree.h                                       |    7 
 b/kernel/rcu/tree_plugin.h                                |   10 -
 b/kernel/rcu/tree_trace.c                                 |    8 
 b/lib/Kconfig.debug                                       |    2 
 b/tools/testing/selftests/rcutorture/bin/parse-console.sh |    2 
 14 files changed, 164 insertions(+), 50 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

Powered by Openwall GNU/*/Linux Powered by OpenVZ