aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJiang Liu <jiang.liu@linux.intel.com>2015-06-01 04:05:14 -0400
committerThomas Gleixner <tglx@linutronix.de>2015-07-13 15:22:46 -0400
commit5f2dbbc51734fc51e8e3e2c3ab7096a58ac72e86 (patch)
treefb68f84631161eb6ab42fdb02a555a193e654f9a
parente49251988b10e8787baa5f3d8ffd154e003f0963 (diff)
x86/irq: Use accessor irq_data_get_node()
Use accessor irq_data_get_node() to hide struct irq_data implementation detail, so we can move node to irq_data_common later. Signed-off-by: Jiang Liu <jiang.liu@linux.intel.com> Cc: Borislav Petkov <bp@alien8.de> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
-rw-r--r--arch/x86/kernel/apic/vector.c8
-rw-r--r--arch/x86/platform/uv/uv_irq.c2
2 files changed, 5 insertions, 5 deletions
diff --git a/arch/x86/kernel/apic/vector.c b/arch/x86/kernel/apic/vector.c
index 28eba2d38b15..9b62f690b0ff 100644
--- a/arch/x86/kernel/apic/vector.c
+++ b/arch/x86/kernel/apic/vector.c
@@ -296,7 +296,7 @@ static int x86_vector_alloc_irqs(struct irq_domain *domain, unsigned int virq,
296 struct irq_alloc_info *info = arg; 296 struct irq_alloc_info *info = arg;
297 struct apic_chip_data *data; 297 struct apic_chip_data *data;
298 struct irq_data *irq_data; 298 struct irq_data *irq_data;
299 int i, err; 299 int i, err, node;
300 300
301 if (disable_apic) 301 if (disable_apic)
302 return -ENXIO; 302 return -ENXIO;
@@ -308,12 +308,13 @@ static int x86_vector_alloc_irqs(struct irq_domain *domain, unsigned int virq,
308 for (i = 0; i < nr_irqs; i++) { 308 for (i = 0; i < nr_irqs; i++) {
309 irq_data = irq_domain_get_irq_data(domain, virq + i); 309 irq_data = irq_domain_get_irq_data(domain, virq + i);
310 BUG_ON(!irq_data); 310 BUG_ON(!irq_data);
311 node = irq_data_get_node(irq_data);
311#ifdef CONFIG_X86_IO_APIC 312#ifdef CONFIG_X86_IO_APIC
312 if (virq + i < nr_legacy_irqs() && legacy_irq_data[virq + i]) 313 if (virq + i < nr_legacy_irqs() && legacy_irq_data[virq + i])
313 data = legacy_irq_data[virq + i]; 314 data = legacy_irq_data[virq + i];
314 else 315 else
315#endif 316#endif
316 data = alloc_apic_chip_data(irq_data->node); 317 data = alloc_apic_chip_data(node);
317 if (!data) { 318 if (!data) {
318 err = -ENOMEM; 319 err = -ENOMEM;
319 goto error; 320 goto error;
@@ -322,8 +323,7 @@ static int x86_vector_alloc_irqs(struct irq_domain *domain, unsigned int virq,
322 irq_data->chip = &lapic_controller; 323 irq_data->chip = &lapic_controller;
323 irq_data->chip_data = data; 324 irq_data->chip_data = data;
324 irq_data->hwirq = virq + i; 325 irq_data->hwirq = virq + i;
325 err = assign_irq_vector_policy(virq, irq_data->node, data, 326 err = assign_irq_vector_policy(virq, node, data, info);
326 info);
327 if (err) 327 if (err)
328 goto error; 328 goto error;
329 } 329 }
diff --git a/arch/x86/platform/uv/uv_irq.c b/arch/x86/platform/uv/uv_irq.c
index 8570abe68be1..e1c24631afbb 100644
--- a/arch/x86/platform/uv/uv_irq.c
+++ b/arch/x86/platform/uv/uv_irq.c
@@ -89,7 +89,7 @@ static int uv_domain_alloc(struct irq_domain *domain, unsigned int virq,
89 return -EINVAL; 89 return -EINVAL;
90 90
91 chip_data = kmalloc_node(sizeof(*chip_data), GFP_KERNEL, 91 chip_data = kmalloc_node(sizeof(*chip_data), GFP_KERNEL,
92 irq_data->node); 92 irq_data_get_node(irq_data));
93 if (!chip_data) 93 if (!chip_data)
94 return -ENOMEM; 94 return -ENOMEM;
95 95