diff options
Diffstat (limited to 'arch/x86/kernel/irq_32.c')
| -rw-r--r-- | arch/x86/kernel/irq_32.c | 45 | 
1 files changed, 0 insertions, 45 deletions
diff --git a/arch/x86/kernel/irq_32.c b/arch/x86/kernel/irq_32.c index 7d35d0fe2329..10709f29d166 100644 --- a/arch/x86/kernel/irq_32.c +++ b/arch/x86/kernel/irq_32.c  | |||
| @@ -211,48 +211,3 @@ bool handle_irq(unsigned irq, struct pt_regs *regs) | |||
| 211 | 211 | ||
| 212 | return true; | 212 | return true; | 
| 213 | } | 213 | } | 
| 214 | |||
| 215 | #ifdef CONFIG_HOTPLUG_CPU | ||
| 216 | |||
| 217 | /* A cpu has been removed from cpu_online_mask. Reset irq affinities. */ | ||
| 218 | void fixup_irqs(void) | ||
| 219 | { | ||
| 220 | unsigned int irq; | ||
| 221 | struct irq_desc *desc; | ||
| 222 | |||
| 223 | for_each_irq_desc(irq, desc) { | ||
| 224 | const struct cpumask *affinity; | ||
| 225 | |||
| 226 | if (!desc) | ||
| 227 | continue; | ||
| 228 | if (irq == 2) | ||
| 229 | continue; | ||
| 230 | |||
| 231 | affinity = desc->affinity; | ||
| 232 | if (cpumask_any_and(affinity, cpu_online_mask) >= nr_cpu_ids) { | ||
| 233 | printk("Breaking affinity for irq %i\n", irq); | ||
| 234 | affinity = cpu_all_mask; | ||
| 235 | } | ||
| 236 | if (desc->chip->set_affinity) | ||
| 237 | desc->chip->set_affinity(irq, affinity); | ||
| 238 | else if (desc->action) | ||
| 239 | printk_once("Cannot set affinity for irq %i\n", irq); | ||
| 240 | } | ||
| 241 | |||
| 242 | #if 0 | ||
| 243 | barrier(); | ||
| 244 | /* Ingo Molnar says: "after the IO-APIC masks have been redirected | ||
| 245 | [note the nop - the interrupt-enable boundary on x86 is two | ||
| 246 | instructions from sti] - to flush out pending hardirqs and | ||
| 247 | IPIs. After this point nothing is supposed to reach this CPU." */ | ||
| 248 | __asm__ __volatile__("sti; nop; cli"); | ||
| 249 | barrier(); | ||
| 250 | #else | ||
| 251 | /* That doesn't seem sufficient. Give it 1ms. */ | ||
| 252 | local_irq_enable(); | ||
| 253 | mdelay(1); | ||
| 254 | local_irq_disable(); | ||
| 255 | #endif | ||
| 256 | } | ||
| 257 | #endif | ||
| 258 | |||
