Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 283544
b: refs/heads/master
c: bda6263
h: refs/heads/master
v: v3
  • Loading branch information
Don Zickus authored and Ingo Molnar committed Dec 5, 2011
1 parent 846f0ba commit 66357de
Show file tree
Hide file tree
Showing 3 changed files with 18 additions and 1 deletion.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 99e8b9ca90d688c3ac7d3a141b701c9694a93925
refs/heads/master: bda62633983f9db49ce0b1a9235b3709c1cda5f0
4 changes: 4 additions & 0 deletions trunk/Documentation/kernel-parameters.txt
Original file line number Diff line number Diff line change
Expand Up @@ -1796,6 +1796,10 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
nomfgpt [X86-32] Disable Multi-Function General Purpose
Timer usage (for AMD Geode machines).

nonmi_ipi [X86] Disable using NMI IPIs during panic/reboot to
shutdown the other cpus. Instead use the REBOOT_VECTOR
irq.

nopat [X86] Disable PAT (page attribute table extension of
pagetables) support.

Expand Down
13 changes: 13 additions & 0 deletions trunk/arch/x86/kernel/smp.c
Original file line number Diff line number Diff line change
Expand Up @@ -249,6 +249,11 @@ static void native_irq_stop_other_cpus(int wait)
local_irq_restore(flags);
}

static void native_smp_disable_nmi_ipi(void)
{
smp_ops.stop_other_cpus = native_irq_stop_other_cpus;
}

/*
* Reschedule call back.
*/
Expand Down Expand Up @@ -280,6 +285,14 @@ void smp_call_function_single_interrupt(struct pt_regs *regs)
irq_exit();
}

static int __init nonmi_ipi_setup(char *str)
{
native_smp_disable_nmi_ipi();
return 1;
}

__setup("nonmi_ipi", nonmi_ipi_setup);

struct smp_ops smp_ops = {
.smp_prepare_boot_cpu = native_smp_prepare_boot_cpu,
.smp_prepare_cpus = native_smp_prepare_cpus,
Expand Down

0 comments on commit 66357de

Please sign in to comment.