I tried to follow your advice, but Xend hates me. I must be doing
something stupid, can anybody help?
I created a trivial xend/server/vfbif.py:
from xen.xend.server.DevController import DevController
class VfbifController(DevController):
"""Virtual frame buffer controller. Handles all vfb devices for a domain.
"""
def __init__(self, vm):
DevController.__init__(self, vm)
def getDeviceDetails(self, config):
"""@see DevController.getDeviceDetails"""
devid = 0
back = {}
front = {}
return (devid, back, front)
I added it to xend/XendDomainInfo.py, as follows:
--- XendDomainInfo.py.orig 2006-10-10 16:23:45.000000000 +0200
+++ XendDomainInfo.py 2006-11-03 14:33:28.000000000 +0100
@@ -1786,7 +1786,7 @@
controllerClasses[device_class] = cls
-from xen.xend.server import blkif, netif, tpmif, pciif, iopif, irqif, usbif
+from xen.xend.server import blkif, netif, tpmif, pciif, iopif, irqif, usbif,
vfbif
from xen.xend.server.BlktapController import BlktapController
addControllerClass('vbd', blkif.BlkifController)
addControllerClass('vif', netif.NetifController)
@@ -1796,3 +1796,4 @@
addControllerClass('irq', irqif.IRQController)
addControllerClass('usb', usbif.UsbifController)
addControllerClass('tap', BlktapController)
+addControllerClass('vfb', vfbif.VfbifController)
I set hotplug-status in the backend, resulting in this:
# xenstore-ls /local/domain/0/backend
vfb = ""
1 = ""
0 = ""
hotplug-status = "connected"
Then I attempt to create domain 1:
# xm create -c parafat
[pygrub screen...]
Using config file "/etc/xen/parafat".
Going to boot Fedora Core (2.6.18.1)
kernel: /vmlinuz-2.6.18.1
initrd: /initrd-2.6.18.1.img
Error: Device 0 not connected
This is actually from configuration when it tries to read
/local/domain/1/device/vfb/0/backend-id. /local/domain/1/device
contains entries vbd and vif, but not vfb. Shouldn't xend have
written stuff there?
I'm confused.
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|