diff options
Diffstat (limited to 'kernel/irq/numa_migrate.c')
-rw-r--r-- | kernel/irq/numa_migrate.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/kernel/irq/numa_migrate.c b/kernel/irq/numa_migrate.c index 26bac9d8f86..65d3845665a 100644 --- a/kernel/irq/numa_migrate.c +++ b/kernel/irq/numa_migrate.c | |||
@@ -6,6 +6,7 @@ | |||
6 | */ | 6 | */ |
7 | 7 | ||
8 | #include <linux/irq.h> | 8 | #include <linux/irq.h> |
9 | #include <linux/slab.h> | ||
9 | #include <linux/module.h> | 10 | #include <linux/module.h> |
10 | #include <linux/random.h> | 11 | #include <linux/random.h> |
11 | #include <linux/interrupt.h> | 12 | #include <linux/interrupt.h> |
@@ -70,7 +71,7 @@ static struct irq_desc *__real_move_irq_desc(struct irq_desc *old_desc, | |||
70 | raw_spin_lock_irqsave(&sparse_irq_lock, flags); | 71 | raw_spin_lock_irqsave(&sparse_irq_lock, flags); |
71 | 72 | ||
72 | /* We have to check it to avoid races with another CPU */ | 73 | /* We have to check it to avoid races with another CPU */ |
73 | desc = irq_desc_ptrs[irq]; | 74 | desc = irq_to_desc(irq); |
74 | 75 | ||
75 | if (desc && old_desc != desc) | 76 | if (desc && old_desc != desc) |
76 | goto out_unlock; | 77 | goto out_unlock; |
@@ -90,7 +91,7 @@ static struct irq_desc *__real_move_irq_desc(struct irq_desc *old_desc, | |||
90 | goto out_unlock; | 91 | goto out_unlock; |
91 | } | 92 | } |
92 | 93 | ||
93 | irq_desc_ptrs[irq] = desc; | 94 | replace_irq_desc(irq, desc); |
94 | raw_spin_unlock_irqrestore(&sparse_irq_lock, flags); | 95 | raw_spin_unlock_irqrestore(&sparse_irq_lock, flags); |
95 | 96 | ||
96 | /* free the old one */ | 97 | /* free the old one */ |