On 04/12/2020 18:12:51+0000, Vladimir Oltean wrote:
> Yeah, well I more or less deliberately lose track of the workqueue as
> soon as ocelot_enqueue_mact_action is over, and that is by design. There
> is potentially more than one address to offload to the hardware in progress
> at the same time, and any sort of serialization in .ndo_set_rx_mode (so
> I could add the workqueue to a list of items to cancel on unbind)
> would mean
> (a) more complicated code
> (b) more busy waiting
> 
> > >  drivers/net/ethernet/mscc/ocelot_net.c | 83 +++++++++++++++++++++++++-
> > >  1 file changed, 80 insertions(+), 3 deletions(-)
> >
> > This is a little large for a rc7 fix :S
> 
> Fine, net-next it is then.
> 
> > What's the expected poll time? maybe it's not that bad to busy wait?
> > Clearly nobody noticed the issue in 2 years (you mention lockdep so
> > not a "real" deadlock) which makes me think the wait can't be that long?
> 
> Not too much, but the sleep is there.
> Also, all 3 of ocelot/felix/seville are memory-mapped devices. But I
> heard from Alex a while ago that he intends to add support for a switch
> managed over a slow bus like SPI, and to use the same regmap infrastructure.
> That would mean that this problem would need to be resolved anyway.
> 

This is still on the way but it will not happen this year unfortunately.


-- 
Alexandre Belloni, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

Reply via email to