From: BitKeeper B. <ri...@su...> - 2005-03-10 17:04:18
|
ChangeSet 1.1311, 2005/03/10 16:10:02+00:00, ka...@fi... Merge firebug.cl.cam.ac.uk:/local/scratch/kaf24/xen-2.0-testing.bk into firebug.cl.cam.ac.uk:/local/scratch/kaf24/xen-unstable.bk linux-2.6.10-xen-sparse/drivers/xen/console/console.c | 2 +- tools/python/xen/xend/server/SrvDaemon.py | 18 +++++++++++++++--- 2 files changed, 16 insertions(+), 4 deletions(-) diff -Nru a/linux-2.6.10-xen-sparse/drivers/xen/console/console.c b/linux-2.6.10-xen-sparse/drivers/xen/console/console.c --- a/linux-2.6.10-xen-sparse/drivers/xen/console/console.c 2005-03-10 12:04:15 -05:00 +++ b/linux-2.6.10-xen-sparse/drivers/xen/console/console.c 2005-03-10 12:04:15 -05:00 @@ -234,7 +234,7 @@ * We use dangerous control-interface functions that require a quiescent * system and no interrupts. Try to ensure this with a global cli(). */ - cli(); + local_irq_disable(); /* XXXsmp */ /* Spin until console data is flushed through to the domain controller. */ while ( (wc != wp) && !ctrl_if_transmitter_empty() ) diff -Nru a/tools/python/xen/xend/server/SrvDaemon.py b/tools/python/xen/xend/server/SrvDaemon.py --- a/tools/python/xen/xend/server/SrvDaemon.py 2005-03-10 12:04:15 -05:00 +++ b/tools/python/xen/xend/server/SrvDaemon.py 2005-03-10 12:04:15 -05:00 @@ -41,6 +41,7 @@ import channel import blkif import netif +import usbif import console import domain from params import * @@ -119,9 +120,9 @@ if hasattr(self, 'protocol'): self.protocol.doStop() self.connected = 0 - #self.notifier.close() # Not implemented. - os.close(self.fileno()) - del self.notifier + #self.notifier.close() # (this said:) Not implemented. + #os.close(self.fileno()) # But yes it is... + del self.notifier # ...as _dealloc! if hasattr(self, 'd'): self.d.callback(None) del self.d @@ -262,6 +263,7 @@ val += self.daemon.consoles() val += self.daemon.blkifs() val += self.daemon.netifs() + val += self.daemon.usbifs() return val def op_sys_subscribe(self, name, v): @@ -620,6 +622,7 @@ self.domainCF = domain.DomainControllerFactory() self.blkifCF = blkif.BlkifControllerFactory() self.netifCF = netif.NetifControllerFactory() + self.usbifCF = usbif.UsbifControllerFactory() self.consoleCF = console.ConsoleControllerFactory() def listenEvent(self): @@ -685,6 +688,15 @@ def netif_get(self, dom): return self.netifCF.getControllerByDom(dom) + + def usbif_create(self, dom, recreate=0): + return self.usbifCF.getController(dom) + + def usbifs(self): + return [ x.sxpr() for x in self.usbifCF.getControllers() ] + + def usbif_get(self, dom): + return self.usbifCF.getControllerByDom(dom) def console_create(self, dom, console_port=None): """Create a console for a domain. |