diff --git a/tools/python/xen/xend/XendDomainInfo.py b/tools/python/xen/xend/XendDomainInfo.py index 70cd68db1c..963a0c8ea8 100644 --- a/tools/python/xen/xend/XendDomainInfo.py +++ b/tools/python/xen/xend/XendDomainInfo.py @@ -971,8 +971,8 @@ class XendDomainInfo: @return: deferred - calls callback with vm """ - d = self.create_blkif() - d.addCallback(lambda x: self.create_devices()) + d = self.create_devices() + d.addCallback(lambda x: self.create_blkif()) d.addCallback(self._configure) return d @@ -994,9 +994,12 @@ class XendDomainInfo: @return: deferred """ - ctrl = xend.blkif_create(self.dom, recreate=self.recreate) - back = ctrl.getBackendInterface(0) - return back.connect(recreate=self.recreate) + if (self.get_devices("vbd") == None): + ctrl = xend.blkif_create(self.dom, recreate=self.recreate) + back = ctrl.getBackendInterface(0) + return back.connect(recreate=self.recreate) + else: + return None def dom_construct(self, dom, config): """Construct a vm for an existing domain. diff --git a/tools/python/xen/xend/server/blkif.py b/tools/python/xen/xend/server/blkif.py index 1e06c55345..c17c0c568e 100755 --- a/tools/python/xen/xend/server/blkif.py +++ b/tools/python/xen/xend/server/blkif.py @@ -187,7 +187,7 @@ class BlkifBackendInterface(controller.BackendInterface): self.writeRequest(msg, response=response) def connectInterface(self, val): - self.evtchn = channel.eventChannel(0, self.controller.dom) + self.evtchn = channel.eventChannel(self.dom, self.controller.dom) log.debug("Connecting blkif to event channel %s ports=%d:%d", str(self), self.evtchn['port1'], self.evtchn['port2']) msg = packMsg('blkif_be_connect_t', diff --git a/tools/python/xen/xend/server/netif.py b/tools/python/xen/xend/server/netif.py index a0466b0e4c..9732702c53 100755 --- a/tools/python/xen/xend/server/netif.py +++ b/tools/python/xen/xend/server/netif.py @@ -307,7 +307,7 @@ class NetDev(controller.SplitDev): def recv_fe_interface_connect(self, val, req): if not req: return - self.evtchn = channel.eventChannel(0, self.controller.dom) + self.evtchn = channel.eventChannel(self.dom, self.controller.dom) msg = packMsg('netif_be_connect_t', { 'domid' : self.controller.dom, 'netif_handle' : self.vif,