aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/irq.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/linux/irq.h')
-rw-r--r--include/linux/irq.h16
1 files changed, 6 insertions, 10 deletions
diff --git a/include/linux/irq.h b/include/linux/irq.h
index 8e4c18b29157..a09baf8f9d99 100644
--- a/include/linux/irq.h
+++ b/include/linux/irq.h
@@ -187,7 +187,7 @@ struct irq_desc {
187 spinlock_t lock; 187 spinlock_t lock;
188#ifdef CONFIG_SMP 188#ifdef CONFIG_SMP
189 cpumask_var_t affinity; 189 cpumask_var_t affinity;
190 unsigned int cpu; 190 unsigned int node;
191#ifdef CONFIG_GENERIC_PENDING_IRQ 191#ifdef CONFIG_GENERIC_PENDING_IRQ
192 cpumask_var_t pending_mask; 192 cpumask_var_t pending_mask;
193#endif 193#endif
@@ -201,16 +201,16 @@ struct irq_desc {
201} ____cacheline_internodealigned_in_smp; 201} ____cacheline_internodealigned_in_smp;
202 202
203extern void arch_init_copy_chip_data(struct irq_desc *old_desc, 203extern void arch_init_copy_chip_data(struct irq_desc *old_desc,
204 struct irq_desc *desc, int cpu); 204 struct irq_desc *desc, int node);
205extern void arch_free_chip_data(struct irq_desc *old_desc, struct irq_desc *desc); 205extern void arch_free_chip_data(struct irq_desc *old_desc, struct irq_desc *desc);
206 206
207#ifndef CONFIG_SPARSE_IRQ 207#ifndef CONFIG_SPARSE_IRQ
208extern struct irq_desc irq_desc[NR_IRQS]; 208extern struct irq_desc irq_desc[NR_IRQS];
209#else /* CONFIG_SPARSE_IRQ */ 209#else /* CONFIG_SPARSE_IRQ */
210extern struct irq_desc *move_irq_desc(struct irq_desc *old_desc, int cpu); 210extern struct irq_desc *move_irq_desc(struct irq_desc *old_desc, int node);
211#endif /* CONFIG_SPARSE_IRQ */ 211#endif /* CONFIG_SPARSE_IRQ */
212 212
213extern struct irq_desc *irq_to_desc_alloc_cpu(unsigned int irq, int cpu); 213extern struct irq_desc *irq_to_desc_alloc_node(unsigned int irq, int node);
214 214
215/* 215/*
216 * Migration helpers for obsolete names, they will go away: 216 * Migration helpers for obsolete names, they will go away:
@@ -422,12 +422,10 @@ extern int set_irq_msi(unsigned int irq, struct msi_desc *entry);
422 * Allocates affinity and pending_mask cpumask if required. 422 * Allocates affinity and pending_mask cpumask if required.
423 * Returns true if successful (or not required). 423 * Returns true if successful (or not required).
424 */ 424 */
425static inline bool alloc_desc_masks(struct irq_desc *desc, int cpu, 425static inline bool alloc_desc_masks(struct irq_desc *desc, int node,
426 bool boot) 426 bool boot)
427{ 427{
428#ifdef CONFIG_CPUMASK_OFFSTACK 428#ifdef CONFIG_CPUMASK_OFFSTACK
429 int node;
430
431 if (boot) { 429 if (boot) {
432 alloc_bootmem_cpumask_var(&desc->affinity); 430 alloc_bootmem_cpumask_var(&desc->affinity);
433 431
@@ -437,8 +435,6 @@ static inline bool alloc_desc_masks(struct irq_desc *desc, int cpu,
437 return true; 435 return true;
438 } 436 }
439 437
440 node = cpu_to_node(cpu);
441
442 if (!alloc_cpumask_var_node(&desc->affinity, GFP_ATOMIC, node)) 438 if (!alloc_cpumask_var_node(&desc->affinity, GFP_ATOMIC, node))
443 return false; 439 return false;
444 440
@@ -494,7 +490,7 @@ static inline void free_desc_masks(struct irq_desc *old_desc,
494 490
495#else /* !CONFIG_SMP */ 491#else /* !CONFIG_SMP */
496 492
497static inline bool alloc_desc_masks(struct irq_desc *desc, int cpu, 493static inline bool alloc_desc_masks(struct irq_desc *desc, int node,
498 bool boot) 494 bool boot)
499{ 495{
500 return true; 496 return true;