Re: [PATCH v3] genirq/matrix: Choose CPU for managed IRQs based on how many of them are allocated

From: Thomas Gleixner
Date: Sat Nov 03 2018 - 11:06:27 EST


Long,

On Fri, 2 Nov 2018, Long Li wrote:
> /**
> * irq_matrix_assign_system - Assign system wide entry in the matrix
> * @m: Matrix pointer
> @@ -269,7 +291,7 @@ int irq_matrix_alloc_managed(struct irq_matrix *m, const struct cpumask *msk,
> if (cpumask_empty(msk))
> return -EINVAL;
>
> - cpu = matrix_find_best_cpu(m, msk);
> + cpu = matrix_find_best_cpu_managed(m, msk);
> if (cpu == UINT_MAX)
> return -ENOSPC;
>
> @@ -282,6 +304,7 @@ int irq_matrix_alloc_managed(struct irq_matrix *m, const struct cpumask *msk,
> return -ENOSPC;
> set_bit(bit, cm->alloc_map);
> cm->allocated++;
> + cm->managed_allocated++;
> m->total_allocated++;
> *mapped_cpu = cpu;
> trace_irq_matrix_alloc_managed(bit, cpu, m, cm);

so far so good. But what exactly decrements managed_allocated ?

Thanks,

tglx