Re: [PATCH v3 4/5] genirq/affinity: allow driver's discontigous affinity set

From: Thomas Gleixner
Date: Mon Jun 24 2019 - 11:43:15 EST


On Mon, 24 Jun 2019, Weiping Zhang wrote:

> The driver may implement multiple affinity set, and some of
> are empty, for this case we just skip them.

Why? What's the point of creating empty sets? Just because is not a real
good justification.

Leaving the patch for Ming.

Thanks,

tglx

> Signed-off-by: Weiping Zhang <zhangweiping@xxxxxxxxxxxxxx>
> ---
> kernel/irq/affinity.c | 4 ++++
> 1 file changed, 4 insertions(+)
>
> diff --git a/kernel/irq/affinity.c b/kernel/irq/affinity.c
> index f18cd5aa33e8..6d964fe0fbd8 100644
> --- a/kernel/irq/affinity.c
> +++ b/kernel/irq/affinity.c
> @@ -295,6 +295,10 @@ irq_create_affinity_masks(unsigned int nvecs, struct irq_affinity *affd)
> unsigned int this_vecs = affd->set_size[i];
> int ret;
>
> + /* skip empty affinity set */
> + if (this_vecs == 0)
> + continue;
> +
> ret = irq_build_affinity_masks(affd, curvec, this_vecs,
> curvec, masks);
> if (ret) {
> --
> 2.14.1
>
>