diff options
| author | Thomas Gleixner <tglx@linutronix.de> | 2015-07-13 16:51:23 -0400 |
|---|---|---|
| committer | Ingo Molnar <mingo@kernel.org> | 2015-07-29 04:08:08 -0400 |
| commit | 8b8149df9ce99e02cb2b4655bf20d0ce459b9076 (patch) | |
| tree | e57b4ceb4ba04c68d442428dda86c6289d3690d5 | |
| parent | d0abe2f3a9a541ded2e30ef7275f057fb7f0335a (diff) | |
sh/irq: Use access helper irq_data_get_affinity_mask()
This is a preparatory patch for moving irq_data struct members.
Signed-off-by: Jiang Liu <jiang.liu@linux.intel.com>
Cc: Simon Horman <horms@verge.net.au>
Cc: Magnus Damm <magnus.damm@gmail.com>
Link: http://lkml.kernel.org/r/20150713151626.713278346@linutronix.de
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
| -rw-r--r-- | arch/sh/kernel/irq.c | 7 | ||||
| -rw-r--r-- | drivers/sh/intc/chip.c | 6 |
2 files changed, 7 insertions, 6 deletions
diff --git a/arch/sh/kernel/irq.c b/arch/sh/kernel/irq.c index 8dc677cc136b..6c0378c0b8b5 100644 --- a/arch/sh/kernel/irq.c +++ b/arch/sh/kernel/irq.c | |||
| @@ -228,15 +228,16 @@ void migrate_irqs(void) | |||
| 228 | struct irq_data *data = irq_get_irq_data(irq); | 228 | struct irq_data *data = irq_get_irq_data(irq); |
| 229 | 229 | ||
| 230 | if (irq_data_get_node(data) == cpu) { | 230 | if (irq_data_get_node(data) == cpu) { |
| 231 | unsigned int newcpu = cpumask_any_and(data->affinity, | 231 | struct cpumask *mask = irq_data_get_affinity_mask(data); |
| 232 | unsigned int newcpu = cpumask_any_and(mask, | ||
| 232 | cpu_online_mask); | 233 | cpu_online_mask); |
| 233 | if (newcpu >= nr_cpu_ids) { | 234 | if (newcpu >= nr_cpu_ids) { |
| 234 | pr_info_ratelimited("IRQ%u no longer affine to CPU%u\n", | 235 | pr_info_ratelimited("IRQ%u no longer affine to CPU%u\n", |
| 235 | irq, cpu); | 236 | irq, cpu); |
| 236 | 237 | ||
| 237 | cpumask_setall(data->affinity); | 238 | cpumask_setall(mask); |
| 238 | } | 239 | } |
| 239 | irq_set_affinity(irq, data->affinity); | 240 | irq_set_affinity(irq, mask); |
| 240 | } | 241 | } |
| 241 | } | 242 | } |
| 242 | } | 243 | } |
diff --git a/drivers/sh/intc/chip.c b/drivers/sh/intc/chip.c index 46427b48e2f1..358df7510186 100644 --- a/drivers/sh/intc/chip.c +++ b/drivers/sh/intc/chip.c | |||
| @@ -22,7 +22,7 @@ void _intc_enable(struct irq_data *data, unsigned long handle) | |||
| 22 | 22 | ||
| 23 | for (cpu = 0; cpu < SMP_NR(d, _INTC_ADDR_E(handle)); cpu++) { | 23 | for (cpu = 0; cpu < SMP_NR(d, _INTC_ADDR_E(handle)); cpu++) { |
| 24 | #ifdef CONFIG_SMP | 24 | #ifdef CONFIG_SMP |
| 25 | if (!cpumask_test_cpu(cpu, data->affinity)) | 25 | if (!cpumask_test_cpu(cpu, irq_data_get_affinity_mask(data))) |
| 26 | continue; | 26 | continue; |
| 27 | #endif | 27 | #endif |
| 28 | addr = INTC_REG(d, _INTC_ADDR_E(handle), cpu); | 28 | addr = INTC_REG(d, _INTC_ADDR_E(handle), cpu); |
| @@ -50,7 +50,7 @@ static void intc_disable(struct irq_data *data) | |||
| 50 | 50 | ||
| 51 | for (cpu = 0; cpu < SMP_NR(d, _INTC_ADDR_D(handle)); cpu++) { | 51 | for (cpu = 0; cpu < SMP_NR(d, _INTC_ADDR_D(handle)); cpu++) { |
| 52 | #ifdef CONFIG_SMP | 52 | #ifdef CONFIG_SMP |
| 53 | if (!cpumask_test_cpu(cpu, data->affinity)) | 53 | if (!cpumask_test_cpu(cpu, irq_data_get_affinity_mask(data))) |
| 54 | continue; | 54 | continue; |
| 55 | #endif | 55 | #endif |
| 56 | addr = INTC_REG(d, _INTC_ADDR_D(handle), cpu); | 56 | addr = INTC_REG(d, _INTC_ADDR_D(handle), cpu); |
| @@ -72,7 +72,7 @@ static int intc_set_affinity(struct irq_data *data, | |||
| 72 | if (!cpumask_intersects(cpumask, cpu_online_mask)) | 72 | if (!cpumask_intersects(cpumask, cpu_online_mask)) |
| 73 | return -1; | 73 | return -1; |
| 74 | 74 | ||
| 75 | cpumask_copy(data->affinity, cpumask); | 75 | cpumask_copy(irq_data_get_affinity_mask(data), cpumask); |
| 76 | 76 | ||
| 77 | return IRQ_SET_MASK_OK_NOCOPY; | 77 | return IRQ_SET_MASK_OK_NOCOPY; |
| 78 | } | 78 | } |
