kernel-ark/include
Paul E. McKenney 67182ae1c4 rcu, debug: detect stalled grace periods
this is a diagnostic patch for Classic RCU.

The approach is to record a timestamp at the beginning
of the grace period (in rcu_start_batch()), then have
rcu_check_callbacks() complain if:

 1.	it is running on a CPU that has holding up grace periods for
 	a long time (say one second).  This will identify the culprit
 	assuming that the culprit has not disabled hardware irqs,
 	instruction execution, or some such.

 2.	it is running on a CPU that is not holding up grace periods,
 	but grace periods have been held up for an even longer time
 	(say two seconds).

It is enabled via the default-off CONFIG_DEBUG_RCU_STALL kernel parameter.

Rather than exponential backoff, it backs off to once per 30 seconds.
My feeling upon thinking on it was that if you have stalled RCU grace
periods for that long, a few extra printk() messages are probably the
least of your worries...

Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Yinghai Lu <yhlu.kernel@gmail.com>
Cc: David Witbrodt <dawitbro@sbcglobal.net>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
2008-08-11 13:35:18 +02:00
..
acpi PCI: disable ASPM per ACPI FADT setting 2008-07-28 14:56:09 -07:00
asm-alpha [PATCH] kill altroot 2008-07-26 20:53:20 -04:00
asm-arm [ARM] Move include/asm-arm/arch-* to arch/arm/*/include/mach 2008-08-07 09:55:48 +01:00
asm-avr32/arch-at32ap avr32: Move include/asm-avr32 to arch/avr32/include/asm 2008-08-05 13:35:07 +02:00
asm-blackfin [PATCH] kill altroot 2008-07-26 20:53:20 -04:00
asm-cris Merge branch 'linus' into core/generic-dma-coherent 2008-07-29 00:07:55 +02:00
asm-frv FRV: Wire up new system calls 2008-08-01 13:03:49 -07:00
asm-generic Missing symbol prefix on vmlinux.lds.h 2008-08-01 12:46:41 -07:00
asm-h8300 [PATCH] kill altroot 2008-07-26 20:53:20 -04:00
asm-m32r [PATCH] kill altroot 2008-07-26 20:53:20 -04:00
asm-m68k m68k: some asm-sparc include files moved 2008-08-04 17:16:20 -07:00
asm-mips [MIPS] kgdb: add arch support for the kernel's kgdb core 2008-07-30 21:54:42 +01:00
asm-mn10300 MN10300: Wire up new system calls 2008-08-01 13:03:48 -07:00
asm-parisc [PATCH] kill altroot 2008-07-26 20:53:20 -04:00
asm-um [PATCH] kill altroot 2008-07-26 20:53:20 -04:00
asm-x86 Merge branch 'kvm-updates-2.6.27' of git://git.kernel.org/pub/scm/linux/kernel/git/avi/kvm 2008-08-01 12:48:16 -07:00
asm-xtensa [PATCH] kill altroot 2008-07-26 20:53:20 -04:00
crypto
drm
keys
linux rcu, debug: detect stalled grace periods 2008-08-11 13:35:18 +02:00
math-emu
media V4L/DVB (8610): Add suspend/resume capabilities to soc_camera. 2008-08-06 06:57:32 -03:00
mtd Merge branch 'linux-next' of git://git.infradead.org/~dedekind/ubi-2.6 2008-07-25 10:40:14 -04:00
net Merge branch 'upstream-davem' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6 2008-08-07 02:10:27 -07:00
pcmcia
rdma RDMA/cma: Remove padding arrays by using struct sockaddr_storage 2008-08-04 11:02:14 -07:00
rxrpc
scsi Re-introduce "[SCSI] extend the last_sector_bug flag to cover more sectors" 2008-08-05 21:42:21 -07:00
sound ALSA: ASoC: Export dapm_reg_event() fully 2008-07-29 16:00:33 +02:00
video radeon: misc corrections 2008-08-05 14:33:49 -07:00
xen
Kbuild kbuild: only one call for include/ in make headers_* 2008-07-25 22:11:44 +02:00