diff options
| author | Simon Arlott <simon@fire.lp0.eu> | 2008-07-19 18:32:54 -0400 |
|---|---|---|
| committer | Ingo Molnar <mingo@elte.hu> | 2008-07-20 04:10:31 -0400 |
| commit | e3a61b0a8c0e342e700a61cd554b01050f333a36 (patch) | |
| tree | 76081e45b9f6aa5d857b7b4ea02cd0014a9d5227 | |
| parent | 5b664cb235e97afbf34db9c4d77f08ebd725335e (diff) | |
x86: add unknown_nmi_panic kernel parameter
It's not possible to enable the unknown_nmi_panic sysctl option
until init is run. It's useful to be able to panic the kernel
during boot too, this adds a parameter to enable this option.
Signed-off-by: Simon Arlott <simon@fire.lp0.eu>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
| -rw-r--r-- | Documentation/kernel-parameters.txt | 4 | ||||
| -rw-r--r-- | arch/x86/kernel/nmi.c | 7 |
2 files changed, 11 insertions, 0 deletions
diff --git a/Documentation/kernel-parameters.txt b/Documentation/kernel-parameters.txt index 09ad7450647b..06fbb3aa288c 100644 --- a/Documentation/kernel-parameters.txt +++ b/Documentation/kernel-parameters.txt | |||
| @@ -2158,6 +2158,10 @@ and is between 256 and 4096 characters. It is defined in the file | |||
| 2158 | Note that genuine overcurrent events won't be | 2158 | Note that genuine overcurrent events won't be |
| 2159 | reported either. | 2159 | reported either. |
| 2160 | 2160 | ||
| 2161 | unknown_nmi_panic | ||
| 2162 | [X86-32,X86-64] | ||
| 2163 | Set unknown_nmi_panic=1 early on boot. | ||
| 2164 | |||
| 2161 | usbcore.autosuspend= | 2165 | usbcore.autosuspend= |
| 2162 | [USB] The autosuspend time delay (in seconds) used | 2166 | [USB] The autosuspend time delay (in seconds) used |
| 2163 | for newly-detected USB devices (default 2). This | 2167 | for newly-detected USB devices (default 2). This |
diff --git a/arch/x86/kernel/nmi.c b/arch/x86/kernel/nmi.c index ec024b3baad0..e0b44b7b717a 100644 --- a/arch/x86/kernel/nmi.c +++ b/arch/x86/kernel/nmi.c | |||
| @@ -448,6 +448,13 @@ nmi_watchdog_tick(struct pt_regs *regs, unsigned reason) | |||
| 448 | 448 | ||
| 449 | #ifdef CONFIG_SYSCTL | 449 | #ifdef CONFIG_SYSCTL |
| 450 | 450 | ||
| 451 | static int __init setup_unknown_nmi_panic(char *str) | ||
| 452 | { | ||
| 453 | unknown_nmi_panic = 1; | ||
| 454 | return 1; | ||
| 455 | } | ||
| 456 | __setup("unknown_nmi_panic", setup_unknown_nmi_panic); | ||
| 457 | |||
| 451 | static int unknown_nmi_panic_callback(struct pt_regs *regs, int cpu) | 458 | static int unknown_nmi_panic_callback(struct pt_regs *regs, int cpu) |
| 452 | { | 459 | { |
| 453 | unsigned char reason = get_nmi_reason(); | 460 | unsigned char reason = get_nmi_reason(); |
