Tue, Oct 10, 2017 at 05:12:34PM CEST, [email protected] wrote: >From: Jiri Pirko >> Sent: 10 October 2017 15:32 >> To: David Laight >> Cc: [email protected]; [email protected]; [email protected]; >> [email protected]; >> [email protected]; [email protected]; [email protected]; >> [email protected] >> Subject: Re: [patch net-next 2/4] net: sched: introduce per-egress action >> device callbacks >> >> Tue, Oct 10, 2017 at 03:31:59PM CEST, [email protected] wrote: >> >From: Jiri Pirko >> >> Sent: 10 October 2017 08:30 >> >> Introduce infrastructure that allows drivers to register callbacks that >> >> are called whenever tc would offload inserted rule and specified device >> >> acts as tc action egress device. >> > >> >How does a driver safely unregister a callback? >> >(to avoid a race with the callback being called.) >> > >> >Usually this requires a callback in the context that makes the >> >notification callbacks indicating that no more such callbacks >> >will be made. >> >> rtnl is your answer. It is being held during register/unregister/cb > >Do you mean 'acquired during register/unregister' and 'held across the >callback' ? > >So the unregister sleeps (or spins?) until any callbacks complete? >So the driver mustn't hold any locks (etc) across the unregister that >it acquires in the callback. >That ought to be noted somewhere.
You actually have a point. I don't take rtnl for reg/unreg as I suppose to. Will fix. > > David >
