summaryrefslogtreecommitdiff
path: root/arch/x86/kernel/apic
diff options
context:
space:
mode:
authorSteven Rostedt (VMware) <rostedt@goodmis.org>2019-03-26 15:21:59 -0400
committerSteven Rostedt (VMware) <rostedt@goodmis.org>2019-03-26 15:21:59 -0400
commit0f96371a30f16f6244195c717b9e2b2f42aa4e89 (patch)
tree3f42b4abf3a7643ddd06f0c7727f2e3b06798c3c /arch/x86/kernel/apic
parente021bb4fb77a8782d21cab4cb0702778fc3784c7 (diff)
parentce194fa2b267e2018f42442347d90df01c4071d6 (diff)
Merge tag 'v4.19.29' into v4.19-rt
This is the 4.19.29 stable release Conflicts: drivers/irqchip/irq-gic-v3-its.c
Diffstat (limited to 'arch/x86/kernel/apic')
-rw-r--r--arch/x86/kernel/apic/vector.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/arch/x86/kernel/apic/vector.c b/arch/x86/kernel/apic/vector.c
index 7654febd5102..652e7ffa9b9d 100644
--- a/arch/x86/kernel/apic/vector.c
+++ b/arch/x86/kernel/apic/vector.c
@@ -313,14 +313,13 @@ assign_managed_vector(struct irq_data *irqd, const struct cpumask *dest)
struct apic_chip_data *apicd = apic_chip_data(irqd);
int vector, cpu;
- cpumask_and(vector_searchmask, vector_searchmask, affmsk);
- cpu = cpumask_first(vector_searchmask);
- if (cpu >= nr_cpu_ids)
- return -EINVAL;
+ cpumask_and(vector_searchmask, dest, affmsk);
+
/* set_affinity might call here for nothing */
if (apicd->vector && cpumask_test_cpu(apicd->cpu, vector_searchmask))
return 0;
- vector = irq_matrix_alloc_managed(vector_matrix, cpu);
+ vector = irq_matrix_alloc_managed(vector_matrix, vector_searchmask,
+ &cpu);
trace_vector_alloc_managed(irqd->irq, vector, vector);
if (vector < 0)
return vector;