Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

mn10300: Fix incorrect use of irq_data->affinity

The field affinity in struct irq_data is type of cpumask_var_t, so
we should pass in data->affinity instead of &data->affinity when
calling cpumask_xxxx().

Signed-off-by: Jiang Liu <jiang.liu@linux.intel.com>
Cc: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Cc: Tony Luck <tony.luck@intel.com>
Cc: linux-am33-list@redhat.com
Cc: Bjorn Helgaas <bhelgaas@google.com>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Randy Dunlap <rdunlap@infradead.org>
Cc: Yinghai Lu <yinghai@kernel.org>
Cc: Borislav Petkov <bp@alien8.de>
Cc: David Howells <dhowells@redhat.com>
Cc: Koichi Yasutake <yasutake.koichi@jp.panasonic.com>
Link: http://lkml.kernel.org/r/1433145945-789-14-git-send-email-jiang.liu@linux.intel.com
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>

authored by

Jiang Liu and committed by
Thomas Gleixner
856b859d 5c1642e4

+3 -3
+3 -3
arch/mn10300/kernel/irq.c
··· 320 320 if (irqd_is_per_cpu(data)) 321 321 continue; 322 322 323 - if (cpumask_test_cpu(self, &data->affinity) && 323 + if (cpumask_test_cpu(self, data->affinity) && 324 324 !cpumask_intersects(&irq_affinity[irq], cpu_online_mask)) { 325 325 int cpu_id; 326 326 cpu_id = cpumask_first(cpu_online_mask); 327 - cpumask_set_cpu(cpu_id, &data->affinity); 327 + cpumask_set_cpu(cpu_id, data->affinity); 328 328 } 329 329 /* We need to operate irq_affinity_online atomically. */ 330 330 arch_local_cli_save(flags); ··· 335 335 GxICR(irq) = x & GxICR_LEVEL; 336 336 tmp = GxICR(irq); 337 337 338 - new = cpumask_any_and(&data->affinity, 338 + new = cpumask_any_and(data->affinity, 339 339 cpu_online_mask); 340 340 irq_affinity_online[irq] = new; 341 341