Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 8bb85190 authored by Ingo Molnar's avatar Ingo Molnar
Browse files

x86, nmi: clean UP NMI watchdog failure message



clean up the failure message - and redirect people to bugzilla
instead of lkml.

Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
parent 15636668
Loading
Loading
Loading
Loading
+19 −13
Original line number Diff line number Diff line
@@ -114,6 +114,23 @@ static __init void nmi_cpu_busy(void *data)
}
#endif

static void report_broken_nmi(int cpu, int *prev_nmi_count)
{
	printk(KERN_CONT "\n");

	printk(KERN_WARNING
		"WARNING: CPU#%d: NMI appears to be stuck (%d->%d)!\n",
			cpu, prev_nmi_count[cpu], get_nmi_count(cpu));

	printk(KERN_WARNING
		"Please report this to bugzilla.kernel.org,\n");
	printk(KERN_WARNING
		"and attach the output of the 'dmesg' command.\n");

	per_cpu(wd_enabled, cpu) = 0;
	atomic_dec(&nmi_active);
}

int __init check_nmi_watchdog(void)
{
	unsigned int *prev_nmi_count;
@@ -141,19 +158,8 @@ int __init check_nmi_watchdog(void)
	for_each_online_cpu(cpu) {
		if (!per_cpu(wd_enabled, cpu))
			continue;
		if (get_nmi_count(cpu) - prev_nmi_count[cpu] <= 5) {
			printk("\n");
			printk(KERN_WARNING "WARNING: CPU#%d: NMI "
				"appears to be stuck (%d->%d)!\n",
				cpu,
				prev_nmi_count[cpu],
				get_nmi_count(cpu));
			printk(KERN_WARNING "Please report this to "
			       "linux-kernel@vger.kernel.org and attach "
			       "the output of 'dmesg' command.\n");
			per_cpu(wd_enabled, cpu) = 0;
			atomic_dec(&nmi_active);
		}
		if (get_nmi_count(cpu) - prev_nmi_count[cpu] <= 5)
			report_broken_nmi(cpu, prev_nmi_count);
	}
	endflag = 1;
	if (!atomic_read(&nmi_active)) {