[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH 1/2] libxl/devd: fix a race with concurrent device addition/removal
Roger Pau Monne writes ("[PATCH 1/2] libxl/devd: fix a race with concurrent device addition/removal"): > Current code can free the libxl__device inside of the libxl__ddomain_device > before the addition has finished if a removal happens while an addition is > still in process: > > backend_watch_callback > | > v > add_device > | backend_watch_callback > (async operation) | > | v > | remove_device > | | > | V > | device_complete > | (free libxl__device) > v > device_complete > (deref libxl__device) > > Fix this by creating a temporary copy of the libxl__device, that's > tracked by the GC of the nested async operation. This ensures that > the libxl__device used by the async operations cannot be freed while > being used. Doesn't this arrange that the remove hotplug script will be invoked while the add hotplug script is still running ? Is that really desirable (or allowed!) ? Ian. _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx https://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |