forked from mirrors/linux
		
	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>
This commit is contained in:
		
							parent
							
								
									b502bd1152
								
							
						
					
					
						commit
						d314d74c69
					
				
					 9 changed files with 8 additions and 11 deletions
				
			
		| 
						 | 
					@ -120,6 +120,9 @@ config HAVE_KRETPROBES
 | 
				
			||||||
 | 
					
 | 
				
			||||||
config HAVE_OPTPROBES
 | 
					config HAVE_OPTPROBES
 | 
				
			||||||
	bool
 | 
						bool
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					config HAVE_NMI_WATCHDOG
 | 
				
			||||||
 | 
						bool
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# An arch should select this if it provides all these things:
 | 
					# An arch should select this if it provides all these things:
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -36,6 +36,7 @@ config BLACKFIN
 | 
				
			||||||
	select GENERIC_ATOMIC64
 | 
						select GENERIC_ATOMIC64
 | 
				
			||||||
	select GENERIC_IRQ_PROBE
 | 
						select GENERIC_IRQ_PROBE
 | 
				
			||||||
	select IRQ_PER_CPU if SMP
 | 
						select IRQ_PER_CPU if SMP
 | 
				
			||||||
 | 
						select HAVE_NMI_WATCHDOG if NMI_WATCHDOG
 | 
				
			||||||
 | 
					
 | 
				
			||||||
config GENERIC_CSUM
 | 
					config GENERIC_CSUM
 | 
				
			||||||
	def_bool y
 | 
						def_bool y
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -38,8 +38,4 @@
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#include <asm-generic/irq.h>
 | 
					#include <asm-generic/irq.h>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#ifdef CONFIG_NMI_WATCHDOG
 | 
					 | 
				
			||||||
# define ARCH_HAS_NMI_WATCHDOG
 | 
					 | 
				
			||||||
#endif
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#endif				/* _BFIN_IRQ_H_ */
 | 
					#endif				/* _BFIN_IRQ_H_ */
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -5,6 +5,7 @@ config MN10300
 | 
				
			||||||
	select GENERIC_IRQ_SHOW
 | 
						select GENERIC_IRQ_SHOW
 | 
				
			||||||
	select HAVE_ARCH_TRACEHOOK
 | 
						select HAVE_ARCH_TRACEHOOK
 | 
				
			||||||
	select HAVE_ARCH_KGDB
 | 
						select HAVE_ARCH_KGDB
 | 
				
			||||||
 | 
						select HAVE_NMI_WATCHDOG if MN10300_WD_TIMER
 | 
				
			||||||
 | 
					
 | 
				
			||||||
config AM33_2
 | 
					config AM33_2
 | 
				
			||||||
	def_bool n
 | 
						def_bool n
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -17,10 +17,6 @@
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#ifdef __KERNEL__
 | 
					#ifdef __KERNEL__
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#ifdef CONFIG_MN10300_WD_TIMER
 | 
					 | 
				
			||||||
#define ARCH_HAS_NMI_WATCHDOG		/* See include/linux/nmi.h */
 | 
					 | 
				
			||||||
#endif
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/*
 | 
					/*
 | 
				
			||||||
 * watchdog timer registers
 | 
					 * watchdog timer registers
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -29,6 +29,7 @@ config SPARC
 | 
				
			||||||
	select GENERIC_IRQ_SHOW
 | 
						select GENERIC_IRQ_SHOW
 | 
				
			||||||
	select USE_GENERIC_SMP_HELPERS if SMP
 | 
						select USE_GENERIC_SMP_HELPERS if SMP
 | 
				
			||||||
	select GENERIC_PCI_IOMAP
 | 
						select GENERIC_PCI_IOMAP
 | 
				
			||||||
 | 
						select HAVE_NMI_WATCHDOG if SPARC64
 | 
				
			||||||
 | 
					
 | 
				
			||||||
config SPARC32
 | 
					config SPARC32
 | 
				
			||||||
	def_bool !64BIT
 | 
						def_bool !64BIT
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -95,7 +95,6 @@ void arch_trigger_all_cpu_backtrace(void);
 | 
				
			||||||
extern void *hardirq_stack[NR_CPUS];
 | 
					extern void *hardirq_stack[NR_CPUS];
 | 
				
			||||||
extern void *softirq_stack[NR_CPUS];
 | 
					extern void *softirq_stack[NR_CPUS];
 | 
				
			||||||
#define __ARCH_HAS_DO_SOFTIRQ
 | 
					#define __ARCH_HAS_DO_SOFTIRQ
 | 
				
			||||||
#define ARCH_HAS_NMI_WATCHDOG
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
#define NO_IRQ		0xffffffff
 | 
					#define NO_IRQ		0xffffffff
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -14,7 +14,7 @@
 | 
				
			||||||
 * may be used to reset the timeout - for code which intentionally
 | 
					 * may be used to reset the timeout - for code which intentionally
 | 
				
			||||||
 * disables interrupts for a long time. This call is stateless.
 | 
					 * 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>
 | 
					#include <asm/nmi.h>
 | 
				
			||||||
extern void touch_nmi_watchdog(void);
 | 
					extern void touch_nmi_watchdog(void);
 | 
				
			||||||
#else
 | 
					#else
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -184,7 +184,7 @@ config LOCKUP_DETECTOR
 | 
				
			||||||
 | 
					
 | 
				
			||||||
config HARDLOCKUP_DETECTOR
 | 
					config HARDLOCKUP_DETECTOR
 | 
				
			||||||
	def_bool LOCKUP_DETECTOR && PERF_EVENTS && HAVE_PERF_EVENTS_NMI && \
 | 
						def_bool LOCKUP_DETECTOR && PERF_EVENTS && HAVE_PERF_EVENTS_NMI && \
 | 
				
			||||||
		 !ARCH_HAS_NMI_WATCHDOG
 | 
							 !HAVE_NMI_WATCHDOG
 | 
				
			||||||
 | 
					
 | 
				
			||||||
config BOOTPARAM_HARDLOCKUP_PANIC
 | 
					config BOOTPARAM_HARDLOCKUP_PANIC
 | 
				
			||||||
	bool "Panic (Reboot) On Hard Lockups"
 | 
						bool "Panic (Reboot) On Hard Lockups"
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in a new issue