On Tue, Nov 3, 2020 at 5:17 AM Isaila Alexandru <aisa...@bitdefender.com> wrote: > > > Hi Jan and sorry for the late reply, > > On 20.10.2020 17:13, Jan Beulich wrote: > > While there don't look to be any problems with this right now, the lock > > order implications from holding the lock can be very difficult to follow > > (and may be easy to violate unknowingly). The present callbacks don't > > (and no such callback should) have any need for the lock to be held. > > > > Signed-off-by: Jan Beulich <jbeul...@suse.com> > > --- > > TODO: vm_event_disable() frees the structures used by respective > > callbacks - need to either use call_rcu() for freeing, or maintain > > a count of in-progress calls, for evtchn_close() to wait to drop > > to zero before dropping the lock / returning. > > I would go with the second solution and maintain a count of in-progress > calls. > > Tamas, Petre how does this sound?
Agree, doing a reference count before freeing is preferred. Thanks, Tamas