[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] Avoid a race between Xend removing the vm entries corresponding to a domain,
# HG changeset patch # User emellor@xxxxxxxxxxxxxxxxxxxxxx # Node ID b2d3117cc7ed6b9410c2cd3eee47c2be1beddeeb # Parent 6734682d2fd0d8bf29ba96d81ccda3f6b276d08d Avoid a race between Xend removing the vm entries corresponding to a domain, and the hotplug scripts checking whether that domain is still alive. This triggers the "xenstore-read: couldn't read path /local/domain/107/vm" message in /var/log/xen-hotplug.log, followed by "Device XYZ is mounted in a guest domain and so cannot be mounted now". Closes bug #514. Signed-off-by: Ewan Mellor <ewan@xxxxxxxxxxxxx> diff -r 6734682d2fd0 -r b2d3117cc7ed tools/examples/block --- a/tools/examples/block Wed Mar 1 22:41:43 2006 +++ b/tools/examples/block Thu Mar 2 00:59:28 2006 @@ -129,7 +129,14 @@ same_vm() { local otherdom="$1" - local othervm=$(xenstore-read "/local/domain/$otherdom/vm") + # Note that othervm can be MISSING here, because Xend will be racing with + # the hotplug scripts -- the entries in /local/domain can be removed by + # Xend before the hotplug scripts have removed the entry in + # /local/domain/0/backend/. In this case, we want to pretend that the + # VM is the same as FRONTEND_UUID, because that way the 'sharing' will be + # allowed. + local othervm=$(xenstore_read_default "/local/domain/$otherdom/vm" \ + "$FRONTEND_UUID") [ "$FRONTEND_UUID" == "$othervm" ] } _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |