Re: [PATCH 03/11] genirq: Export irq_set_affinity_locked()

Marc Zyngier
2021-09-25T11:51:08Z

On Fri, 24 Sep 2021 18:05:38 +0100,
Florian Fainelli <f.fainelli@gmail.com> wrote:
>
> irq-bcm7038-l1 uses that symbol and we want to make it a loadable module
> in subsequent changes.
>
> Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
> ---
> kernel/irq/manage.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/kernel/irq/manage.c b/kernel/irq/manage.c
> index 7405e384e5ed..e0c573e5d249 100644
> --- a/kernel/irq/manage.c
> +++ b/kernel/irq/manage.c
> @@ -369,6 +369,7 @@ int irq_set_affinity_locked(struct irq_data *data, const struct cpumask *mask,
>
> return ret;
> }
> +EXPORT_SYMBOL_GPL(irq_set_affinity_locked);
>
> /**
> * irq_update_affinity_desc - Update affinity management for an interrupt

This doesn't seem right.

This driver seem to try and move interrupts on its own when the CPU
goes down. Why can't it rely on the normal CPU hotplug infrastructure
to do so like all the other drivers (bar some Cavium driver that does
the same thing)?

I'd rather you take this opportunity to move these drivers into the
21st century, so that we can kill irq_cpu_offline() and co altogether.

Thanks,

M.

--
Without deviation from the norm, progress is not possible.