|
@@ -74,7 +74,6 @@ static atomic_t uv_in_nmi;
|
|
static atomic_t uv_nmi_cpu = ATOMIC_INIT(-1);
|
|
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_cpus_in_nmi = ATOMIC_INIT(-1);
|
|
static atomic_t uv_nmi_slave_continue;
|
|
static atomic_t uv_nmi_slave_continue;
|
|
-static atomic_t uv_nmi_kexec_failed;
|
|
|
|
static cpumask_var_t uv_nmi_cpu_mask;
|
|
static cpumask_var_t uv_nmi_cpu_mask;
|
|
|
|
|
|
/* Values for uv_nmi_slave_continue */
|
|
/* Values for uv_nmi_slave_continue */
|
|
@@ -504,6 +503,7 @@ static void uv_nmi_touch_watchdogs(void)
|
|
}
|
|
}
|
|
|
|
|
|
#if defined(CONFIG_KEXEC)
|
|
#if defined(CONFIG_KEXEC)
|
|
|
|
+static atomic_t uv_nmi_kexec_failed;
|
|
static void uv_nmi_kdump(int cpu, int master, struct pt_regs *regs)
|
|
static void uv_nmi_kdump(int cpu, int master, struct pt_regs *regs)
|
|
{
|
|
{
|
|
/* Call crash to dump system state */
|
|
/* 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
|
|
* 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;
|
|
int ret;
|
|
|
|
|
|
@@ -651,7 +651,7 @@ int uv_handle_nmi_ping(unsigned int reason, struct pt_regs *regs)
|
|
return ret;
|
|
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"))
|
|
if (register_nmi_handler(NMI_UNKNOWN, uv_handle_nmi, 0, "uv"))
|
|
pr_warn("UV: NMI handler failed to register\n");
|
|
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];
|
|
uv_hub_nmi_per(cpu) = uv_hub_nmi_list[nid];
|
|
}
|
|
}
|
|
BUG_ON(!alloc_cpumask_var(&uv_nmi_cpu_mask, GFP_KERNEL));
|
|
BUG_ON(!alloc_cpumask_var(&uv_nmi_cpu_mask, GFP_KERNEL));
|
|
|
|
+ uv_register_nmi_notifier();
|
|
}
|
|
}
|
|
-
|
|
|
|
-
|
|
|