Re: Extend irq_set_affinity_notifier() to use a call chain

From: Thomas Gleixner
Date: Mon May 26 2014 - 07:34:27 EST


On Mon, 26 May 2014, Amir Vadai wrote:

> On 5/26/2014 2:15 PM, Thomas Gleixner wrote:
> > On Sun, 25 May 2014, Amir Vadai wrote:
> > > In order to do that, I need to add a new irq affinity notification
> > > callback (In addition to the existing cpu_rmap notification). For
> > > that I would like to extend irq_set_affinity_notifier() to have a
> > > notifier call-chain instead of a single notifier callback.
> >
> > Why? "I would like" is a non argument.
>
> Current implementation enables only one callback to be registered for irq
> affinity change notifications.

I'm well aware of that.

> cpu_rmap is registered be notified - for RFS purposes. mlx4_en (and
> probably other network drivers) needs to be notified too, in order
> to stop the napi polling on the old cpu and move to the new one. To
> enable more than 1 notification callbacks, I suggest to use a
> notifier call chain.

You are not describing what needs to be notified and why. Please
explain the details of that and how the RFS (whatever that is) and the
network driver are connected and why this notification cannot be
propagated inside the network stack itself.

notifier chains are almost always a clear sign for a design disaster
and I'm not going to even think about it before I do not have a
concice explanation of the problem at hand and why a notifier chain is
a good solution.

Thanks,

tglx


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/