diff options
Diffstat (limited to 'arch/sh/kernel/irq.c')
| -rw-r--r-- | arch/sh/kernel/irq.c | 9 | 
1 files changed, 5 insertions, 4 deletions
diff --git a/arch/sh/kernel/irq.c b/arch/sh/kernel/irq.c index eb10ff84015c..6c0378c0b8b5 100644 --- a/arch/sh/kernel/irq.c +++ b/arch/sh/kernel/irq.c @@ -227,16 +227,17 @@ void migrate_irqs(void)  	for_each_active_irq(irq) {  		struct irq_data *data = irq_get_irq_data(irq); -		if (data->node == cpu) { -			unsigned int newcpu = cpumask_any_and(data->affinity, +		if (irq_data_get_node(data) == cpu) { +			struct cpumask *mask = irq_data_get_affinity_mask(data); +			unsigned int newcpu = cpumask_any_and(mask,  							      cpu_online_mask);  			if (newcpu >= nr_cpu_ids) {  				pr_info_ratelimited("IRQ%u no longer affine to CPU%u\n",  						    irq, cpu); -				cpumask_setall(data->affinity); +				cpumask_setall(mask);  			} -			irq_set_affinity(irq, data->affinity); +			irq_set_affinity(irq, mask);  		}  	}  }  |