Release 4.14 arch/x86/kernel/apic/hw_nmi.c
// SPDX-License-Identifier: GPL-2.0
/*
* HW NMI watchdog support
*
* started by Don Zickus, Copyright (C) 2010 Red Hat, Inc.
*
* Arch specific calls to support NMI watchdog
*
* Bits copied from original nmi.c file
*
*/
#include <asm/apic.h>
#include <asm/nmi.h>
#include <linux/cpumask.h>
#include <linux/kdebug.h>
#include <linux/notifier.h>
#include <linux/kprobes.h>
#include <linux/nmi.h>
#include <linux/init.h>
#include <linux/delay.h>
#ifdef CONFIG_HARDLOCKUP_DETECTOR_PERF
u64 hw_nmi_get_sample_period(int watchdog_thresh)
{
return (u64)(cpu_khz) * 1000 * watchdog_thresh;
}
Contributors
Person | Tokens | Prop | Commits | CommitProp |
Don Zickus | 17 | 85.00% | 2 | 66.67% |
Mandeep Singh Baines | 3 | 15.00% | 1 | 33.33% |
Total | 20 | 100.00% | 3 | 100.00% |
#endif
#ifdef arch_trigger_cpumask_backtrace
static void nmi_raise_cpu_backtrace(cpumask_t *mask)
{
apic->send_IPI_mask(mask, NMI_VECTOR);
}
Contributors
Person | Tokens | Prop | Commits | CommitProp |
Steven Rostedt | 12 | 63.16% | 1 | 50.00% |
Russell King | 7 | 36.84% | 1 | 50.00% |
Total | 19 | 100.00% | 2 | 100.00% |
void arch_trigger_cpumask_backtrace(const cpumask_t *mask, bool exclude_self)
{
nmi_trigger_cpumask_backtrace(mask, exclude_self,
nmi_raise_cpu_backtrace);
}
Contributors
Person | Tokens | Prop | Commits | CommitProp |
Chris Metcalf | 11 | 50.00% | 1 | 20.00% |
Don Zickus | 4 | 18.18% | 1 | 20.00% |
Steven Rostedt | 4 | 18.18% | 1 | 20.00% |
Aaron Tomlin | 2 | 9.09% | 1 | 20.00% |
Russell King | 1 | 4.55% | 1 | 20.00% |
Total | 22 | 100.00% | 5 | 100.00% |
static int nmi_cpu_backtrace_handler(unsigned int cmd, struct pt_regs *regs)
{
if (nmi_cpu_backtrace(regs))
return NMI_HANDLED;
return NMI_DONE;
}
Contributors
Person | Tokens | Prop | Commits | CommitProp |
Don Zickus | 25 | 89.29% | 2 | 50.00% |
Russell King | 2 | 7.14% | 1 | 25.00% |
Chris Metcalf | 1 | 3.57% | 1 | 25.00% |
Total | 28 | 100.00% | 4 | 100.00% |
NOKPROBE_SYMBOL(nmi_cpu_backtrace_handler);
static int __init register_nmi_cpu_backtrace_handler(void)
{
register_nmi_handler(NMI_LOCAL, nmi_cpu_backtrace_handler,
0, "arch_bt");
return 0;
}
Contributors
Person | Tokens | Prop | Commits | CommitProp |
Don Zickus | 21 | 91.30% | 2 | 66.67% |
Chris Metcalf | 2 | 8.70% | 1 | 33.33% |
Total | 23 | 100.00% | 3 | 100.00% |
early_initcall(register_nmi_cpu_backtrace_handler);
#endif
Overall Contributors
Person | Tokens | Prop | Commits | CommitProp |
Don Zickus | 95 | 59.01% | 7 | 35.00% |
Chris Metcalf | 17 | 10.56% | 1 | 5.00% |
Steven Rostedt | 16 | 9.94% | 1 | 5.00% |
Russell King | 10 | 6.21% | 1 | 5.00% |
Masami Hiramatsu | 4 | 2.48% | 1 | 5.00% |
Ingo Molnar | 3 | 1.86% | 1 | 5.00% |
Mandeep Singh Baines | 3 | 1.86% | 1 | 5.00% |
Jean Delvare | 3 | 1.86% | 1 | 5.00% |
Michel Lespinasse | 3 | 1.86% | 1 | 5.00% |
Aaron Tomlin | 2 | 1.24% | 1 | 5.00% |
Rakib Mullick | 2 | 1.24% | 1 | 5.00% |
Nicholas Piggin | 1 | 0.62% | 1 | 5.00% |
Greg Kroah-Hartman | 1 | 0.62% | 1 | 5.00% |
Paul Gortmaker | 1 | 0.62% | 1 | 5.00% |
Total | 161 | 100.00% | 20 | 100.00% |
Information contained on this website is for historical information purposes only and does not indicate or represent copyright ownership.