diff options
author | Linus Torvalds <torvalds@g5.osdl.org> | 2006-06-26 13:51:09 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-06-26 13:51:09 -0400 |
commit | 81a07d7588d376c530d006e24d7981304ce96e16 (patch) | |
tree | 1608e094c88b9702c86cf2e6f65339aab9ea3f3f /include/asm-i386/mach-default/mach_ipi.h | |
parent | 8871e73fdbde07d0a41393f7ee30787b65387b36 (diff) | |
parent | 8501a2fbe762b21d2504ed3aca3b52be61b5e6e4 (diff) |
Merge branch 'x86-64'
* x86-64: (83 commits)
[PATCH] x86_64: x86_64 stack usage debugging
[PATCH] x86_64: (resend) x86_64 stack overflow debugging
[PATCH] x86_64: msi_apic.c build fix
[PATCH] x86_64: i386/x86-64 Add nmi watchdog support for new Intel CPUs
[PATCH] x86_64: Avoid broadcasting NMI IPIs
[PATCH] x86_64: fix apic error on bootup
[PATCH] x86_64: enlarge window for stack growth
[PATCH] x86_64: Minor string functions optimizations
[PATCH] x86_64: Move export symbols to their C functions
[PATCH] x86_64: Standardize i386/x86_64 handling of NMI_VECTOR
[PATCH] x86_64: Fix modular pc speaker
[PATCH] x86_64: remove sys32_ni_syscall()
[PATCH] x86_64: Do not use -ffunction-sections for modules
[PATCH] x86_64: Add cpu_relax to apic_wait_icr_idle
[PATCH] x86_64: adjust kstack_depth_to_print default
[PATCH] i386/x86-64: adjust /proc/interrupts column headings
[PATCH] x86_64: Fix race in cpu_local_* on preemptible kernels
[PATCH] x86_64: Fix fast check in safe_smp_processor_id
[PATCH] x86_64: x86_64 setup.c - printing cmp related boottime information
[PATCH] i386/x86-64/ia64: Move polling flag into thread_info_status
...
Manual resolve of trivial conflict in arch/i386/kernel/Makefile
Diffstat (limited to 'include/asm-i386/mach-default/mach_ipi.h')
-rw-r--r-- | include/asm-i386/mach-default/mach_ipi.h | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/include/asm-i386/mach-default/mach_ipi.h b/include/asm-i386/mach-default/mach_ipi.h index a1d0072e36bc..0dba244c86db 100644 --- a/include/asm-i386/mach-default/mach_ipi.h +++ b/include/asm-i386/mach-default/mach_ipi.h | |||
@@ -1,6 +1,9 @@ | |||
1 | #ifndef __ASM_MACH_IPI_H | 1 | #ifndef __ASM_MACH_IPI_H |
2 | #define __ASM_MACH_IPI_H | 2 | #define __ASM_MACH_IPI_H |
3 | 3 | ||
4 | /* Avoid include hell */ | ||
5 | #define NMI_VECTOR 0x02 | ||
6 | |||
4 | void send_IPI_mask_bitmask(cpumask_t mask, int vector); | 7 | void send_IPI_mask_bitmask(cpumask_t mask, int vector); |
5 | void __send_IPI_shortcut(unsigned int shortcut, int vector); | 8 | void __send_IPI_shortcut(unsigned int shortcut, int vector); |
6 | 9 | ||
@@ -13,7 +16,7 @@ static inline void send_IPI_mask(cpumask_t mask, int vector) | |||
13 | 16 | ||
14 | static inline void __local_send_IPI_allbutself(int vector) | 17 | static inline void __local_send_IPI_allbutself(int vector) |
15 | { | 18 | { |
16 | if (no_broadcast) { | 19 | if (no_broadcast || vector == NMI_VECTOR) { |
17 | cpumask_t mask = cpu_online_map; | 20 | cpumask_t mask = cpu_online_map; |
18 | 21 | ||
19 | cpu_clear(smp_processor_id(), mask); | 22 | cpu_clear(smp_processor_id(), mask); |
@@ -24,7 +27,7 @@ static inline void __local_send_IPI_allbutself(int vector) | |||
24 | 27 | ||
25 | static inline void __local_send_IPI_all(int vector) | 28 | static inline void __local_send_IPI_all(int vector) |
26 | { | 29 | { |
27 | if (no_broadcast) | 30 | if (no_broadcast || vector == NMI_VECTOR) |
28 | send_IPI_mask(cpu_online_map, vector); | 31 | send_IPI_mask(cpu_online_map, vector); |
29 | else | 32 | else |
30 | __send_IPI_shortcut(APIC_DEST_ALLINC, vector); | 33 | __send_IPI_shortcut(APIC_DEST_ALLINC, vector); |