diff options
| author | Cong Wang <xiyou.wangcong@gmail.com> | 2012-03-23 15:01:51 -0700 | 
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2012-03-23 16:58:31 -0700 | 
| commit | d314d74c695f967e10598467a326f41c78ed1e20 (patch) | |
| tree | 71fabe9cf1f2b99f16f7f9cc3f809955038a2d0c | |
| parent | b502bd1152472dc1b98c60434f23c23b280c7b94 (diff) | |
| download | olio-linux-3.10-d314d74c695f967e10598467a326f41c78ed1e20.tar.xz olio-linux-3.10-d314d74c695f967e10598467a326f41c78ed1e20.zip  | |
nmi watchdog: do not use cpp symbol in Kconfig
ARCH_HAS_NMI_WATCHDOG is a macro defined by arch, but config
HARDLOCKUP_DETECTOR depends on it.  This is wrong, ARCH_HAS_NMI_WATCHDOG
has to be a Kconfig config, and arch's need it should select it
explicitly.
Signed-off-by: WANG Cong <xiyou.wangcong@gmail.com>
Acked-by: Don Zickus <dzickus@redhat.com>
Acked-by: Mike Frysinger <vapier@gentoo.org>
Cc: David Howells <dhowells@redhat.com>
Cc: David Miller <davem@davemloft.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
| -rw-r--r-- | arch/Kconfig | 3 | ||||
| -rw-r--r-- | arch/blackfin/Kconfig | 1 | ||||
| -rw-r--r-- | arch/blackfin/include/asm/irq.h | 4 | ||||
| -rw-r--r-- | arch/mn10300/Kconfig | 1 | ||||
| -rw-r--r-- | arch/mn10300/include/asm/reset-regs.h | 4 | ||||
| -rw-r--r-- | arch/sparc/Kconfig | 1 | ||||
| -rw-r--r-- | arch/sparc/include/asm/irq_64.h | 1 | ||||
| -rw-r--r-- | include/linux/nmi.h | 2 | ||||
| -rw-r--r-- | lib/Kconfig.debug | 2 | 
9 files changed, 8 insertions, 11 deletions
diff --git a/arch/Kconfig b/arch/Kconfig index 5b448a74d0f..a6f14f622d1 100644 --- a/arch/Kconfig +++ b/arch/Kconfig @@ -120,6 +120,9 @@ config HAVE_KRETPROBES  config HAVE_OPTPROBES  	bool + +config HAVE_NMI_WATCHDOG +	bool  #  # An arch should select this if it provides all these things:  # diff --git a/arch/blackfin/Kconfig b/arch/blackfin/Kconfig index abe5a9e8514..c1269a1085e 100644 --- a/arch/blackfin/Kconfig +++ b/arch/blackfin/Kconfig @@ -36,6 +36,7 @@ config BLACKFIN  	select GENERIC_ATOMIC64  	select GENERIC_IRQ_PROBE  	select IRQ_PER_CPU if SMP +	select HAVE_NMI_WATCHDOG if NMI_WATCHDOG  config GENERIC_CSUM  	def_bool y diff --git a/arch/blackfin/include/asm/irq.h b/arch/blackfin/include/asm/irq.h index 12f4060a31b..89de539ed01 100644 --- a/arch/blackfin/include/asm/irq.h +++ b/arch/blackfin/include/asm/irq.h @@ -38,8 +38,4 @@  #include <asm-generic/irq.h> -#ifdef CONFIG_NMI_WATCHDOG -# define ARCH_HAS_NMI_WATCHDOG -#endif -  #endif				/* _BFIN_IRQ_H_ */ diff --git a/arch/mn10300/Kconfig b/arch/mn10300/Kconfig index 8f1c40d5817..3aa3de01715 100644 --- a/arch/mn10300/Kconfig +++ b/arch/mn10300/Kconfig @@ -5,6 +5,7 @@ config MN10300  	select GENERIC_IRQ_SHOW  	select HAVE_ARCH_TRACEHOOK  	select HAVE_ARCH_KGDB +	select HAVE_NMI_WATCHDOG if MN10300_WD_TIMER  config AM33_2  	def_bool n diff --git a/arch/mn10300/include/asm/reset-regs.h b/arch/mn10300/include/asm/reset-regs.h index 10c7502a113..8ca2a42d365 100644 --- a/arch/mn10300/include/asm/reset-regs.h +++ b/arch/mn10300/include/asm/reset-regs.h @@ -17,10 +17,6 @@  #ifdef __KERNEL__ -#ifdef CONFIG_MN10300_WD_TIMER -#define ARCH_HAS_NMI_WATCHDOG		/* See include/linux/nmi.h */ -#endif -  /*   * watchdog timer registers   */ diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig index ca5580e4d81..1666de84d47 100644 --- a/arch/sparc/Kconfig +++ b/arch/sparc/Kconfig @@ -29,6 +29,7 @@ config SPARC  	select GENERIC_IRQ_SHOW  	select USE_GENERIC_SMP_HELPERS if SMP  	select GENERIC_PCI_IOMAP +	select HAVE_NMI_WATCHDOG if SPARC64  config SPARC32  	def_bool !64BIT diff --git a/arch/sparc/include/asm/irq_64.h b/arch/sparc/include/asm/irq_64.h index 16dcae6d56e..abf6afe82ca 100644 --- a/arch/sparc/include/asm/irq_64.h +++ b/arch/sparc/include/asm/irq_64.h @@ -95,7 +95,6 @@ void arch_trigger_all_cpu_backtrace(void);  extern void *hardirq_stack[NR_CPUS];  extern void *softirq_stack[NR_CPUS];  #define __ARCH_HAS_DO_SOFTIRQ -#define ARCH_HAS_NMI_WATCHDOG  #define NO_IRQ		0xffffffff diff --git a/include/linux/nmi.h b/include/linux/nmi.h index 2d304efc89d..db50840e635 100644 --- a/include/linux/nmi.h +++ b/include/linux/nmi.h @@ -14,7 +14,7 @@   * may be used to reset the timeout - for code which intentionally   * disables interrupts for a long time. This call is stateless.   */ -#if defined(ARCH_HAS_NMI_WATCHDOG) || defined(CONFIG_HARDLOCKUP_DETECTOR) +#if defined(CONFIG_HAVE_NMI_WATCHDOG) || defined(CONFIG_HARDLOCKUP_DETECTOR)  #include <asm/nmi.h>  extern void touch_nmi_watchdog(void);  #else diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug index 05037dc9bde..391003f7ab4 100644 --- a/lib/Kconfig.debug +++ b/lib/Kconfig.debug @@ -184,7 +184,7 @@ config LOCKUP_DETECTOR  config HARDLOCKUP_DETECTOR  	def_bool LOCKUP_DETECTOR && PERF_EVENTS && HAVE_PERF_EVENTS_NMI && \ -		 !ARCH_HAS_NMI_WATCHDOG +		 !HAVE_NMI_WATCHDOG  config BOOTPARAM_HARDLOCKUP_PANIC  	bool "Panic (Reboot) On Hard Lockups"  |