x86/uv/nmi: Fix Sparse warnings
Make uv_register_nmi_notifier() and uv_handle_nmi_ping() static to address sparse warnings. Fix problem where uv_nmi_kexec_failed is unused when CONFIG_KEXEC is not defined. Signed-off-by: Mike Travis <travis@sgi.com> Reviewed-by: Hedi Berriche <hedi@sgi.com> Cc: Russ Anderson <rja@sgi.com> Cc: Jason Wessel <jason.wessel@windriver.com> Cc: Peter Zijlstra <a.p.zijlstra@chello.nl> Cc: Paul Mackerras <paulus@samba.org> Cc: Arnaldo Carvalho de Melo <acme@ghostprotocols.net> Link: http://lkml.kernel.org/r/20140114162551.480872353@asylum.americas.sgi.com Signed-off-by: Ingo Molnar <mingo@kernel.org>
This commit is contained in:
Родитель
fc8b13740b
Коммит
74c93f9d39
|
@ -12,7 +12,6 @@ extern enum uv_system_type get_uv_system_type(void);
|
|||
extern int is_uv_system(void);
|
||||
extern void uv_cpu_init(void);
|
||||
extern void uv_nmi_init(void);
|
||||
extern void uv_register_nmi_notifier(void);
|
||||
extern void uv_system_init(void);
|
||||
extern const struct cpumask *uv_flush_tlb_others(const struct cpumask *cpumask,
|
||||
struct mm_struct *mm,
|
||||
|
@ -26,7 +25,6 @@ static inline enum uv_system_type get_uv_system_type(void) { return UV_NONE; }
|
|||
static inline int is_uv_system(void) { return 0; }
|
||||
static inline void uv_cpu_init(void) { }
|
||||
static inline void uv_system_init(void) { }
|
||||
static inline void uv_register_nmi_notifier(void) { }
|
||||
static inline const struct cpumask *
|
||||
uv_flush_tlb_others(const struct cpumask *cpumask, struct mm_struct *mm,
|
||||
unsigned long start, unsigned long end, unsigned int cpu)
|
||||
|
|
|
@ -980,7 +980,6 @@ void __init uv_system_init(void)
|
|||
uv_nmi_setup();
|
||||
uv_cpu_init();
|
||||
uv_scir_register_cpu_notifier();
|
||||
uv_register_nmi_notifier();
|
||||
proc_mkdir("sgi_uv", NULL);
|
||||
|
||||
/* register Legacy VGA I/O redirection handler */
|
||||
|
|
|
@ -74,7 +74,6 @@ static atomic_t uv_in_nmi;
|
|||
static atomic_t uv_nmi_cpu = ATOMIC_INIT(-1);
|
||||
static atomic_t uv_nmi_cpus_in_nmi = ATOMIC_INIT(-1);
|
||||
static atomic_t uv_nmi_slave_continue;
|
||||
static atomic_t uv_nmi_kexec_failed;
|
||||
static cpumask_var_t uv_nmi_cpu_mask;
|
||||
|
||||
/* Values for uv_nmi_slave_continue */
|
||||
|
@ -504,6 +503,7 @@ static void uv_nmi_touch_watchdogs(void)
|
|||
}
|
||||
|
||||
#if defined(CONFIG_KEXEC)
|
||||
static atomic_t uv_nmi_kexec_failed;
|
||||
static void uv_nmi_kdump(int cpu, int master, struct pt_regs *regs)
|
||||
{
|
||||
/* Call crash to dump system state */
|
||||
|
@ -634,7 +634,7 @@ int uv_handle_nmi(unsigned int reason, struct pt_regs *regs)
|
|||
/*
|
||||
* NMI handler for pulling in CPUs when perf events are grabbing our NMI
|
||||
*/
|
||||
int uv_handle_nmi_ping(unsigned int reason, struct pt_regs *regs)
|
||||
static int uv_handle_nmi_ping(unsigned int reason, struct pt_regs *regs)
|
||||
{
|
||||
int ret;
|
||||
|
||||
|
@ -651,7 +651,7 @@ int uv_handle_nmi_ping(unsigned int reason, struct pt_regs *regs)
|
|||
return ret;
|
||||
}
|
||||
|
||||
void uv_register_nmi_notifier(void)
|
||||
static void uv_register_nmi_notifier(void)
|
||||
{
|
||||
if (register_nmi_handler(NMI_UNKNOWN, uv_handle_nmi, 0, "uv"))
|
||||
pr_warn("UV: NMI handler failed to register\n");
|
||||
|
@ -695,6 +695,5 @@ void uv_nmi_setup(void)
|
|||
uv_hub_nmi_per(cpu) = uv_hub_nmi_list[nid];
|
||||
}
|
||||
BUG_ON(!alloc_cpumask_var(&uv_nmi_cpu_mask, GFP_KERNEL));
|
||||
uv_register_nmi_notifier();
|
||||
}
|
||||
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче