x86, apic: untangle the send_IPI_*() jungle
[linux-2.6-block.git] / arch / x86 / include / asm / summit / ipi.h
CommitLineData
e8c48efd
YL
1#ifndef __ASM_SUMMIT_IPI_H
2#define __ASM_SUMMIT_IPI_H
1da177e4 3
dac5f412
IM
4void default_send_IPI_mask_sequence(const cpumask_t *mask, int vector);
5void default_send_IPI_mask_allbutself(const cpumask_t *mask, int vector);
1da177e4 6
dac5f412 7static inline void summit_send_IPI_mask(const cpumask_t *mask, int vector)
1da177e4 8{
dac5f412 9 default_send_IPI_mask_sequence(mask, vector);
1da177e4
LT
10}
11
dac5f412 12static inline void summit_send_IPI_allbutself(int vector)
1da177e4
LT
13{
14 cpumask_t mask = cpu_online_map;
15 cpu_clear(smp_processor_id(), mask);
16
17 if (!cpus_empty(mask))
dac5f412 18 summit_send_IPI_mask(&mask, vector);
1da177e4
LT
19}
20
dac5f412 21static inline void summit_send_IPI_all(int vector)
1da177e4 22{
dac5f412 23 summit_send_IPI_mask(&cpu_online_map, vector);
1da177e4
LT
24}
25
e8c48efd 26#endif /* __ASM_SUMMIT_IPI_H */