---><*> Block-device tap backend driver
---><*> Block-device tap backend driver 2
---><*>Network-device backend driver
---><*>Network-device loopback driver
---><*>PCI-device backend driver
PCI backend mode (virtual PCI) --->
---><*>TPM-device backend driver
---><*>SCSI backend driver
---><*>USB backend driver
--->[*] Disables serial ports drivers
---><*>Export xen attributes in sysfs
Xen version compatibility (3.0.4 and later) --->
Devices Drivers ---> [*] Scrub memory before freeing it to Xen
Bus Options (PCI etc.) ---> [*] Xen PCI Frontend
<*> Support for PCI Hotplug --->
*My backend driver support are compiled as modules, though I doubt this makes a difference. Same applies for the Xen version compatibility you used.
Besides that i enabled several options for my disk, audio, video, NIC, etc.
For the DomU kernel i compiled without the Privileged Guest option, all the backend options and Bus Options (PCI etc.) ---> [] PCI support and Device Drivers ---> SCSI device support ---> - - SCSI device support . I selected all frontend optiones.
I saved both kernel configurations in /boot, i named them dom0 and domU.
I restarted my pc, after adding the corresponding lines to my grub.conf, and everything started fine.
Before starting Xen i modified the xend-config.sxp script adding the following line and commenting this other,
#(network-script network-bridge)
(network-script 'network-bridge netdev=eth0')
After that i start xen, everything works fine. I have a questions here: shouldn't i have a peth0 interface when i use de ifconfig command? It only shows eth0 and the loopback interface. If i add -a option it shows several vif, veth and ifb interfaces plus a tunl0, gre0, eql, dummy and bond0 interface. Maybe that's part of the problem i have.
*peth0 should show becasue the interface must still be up in order to work with the xen bridge. In your case named eth1
Moving on, here is my .cfg file that i'm using for the virtual machine:
kernel = "/data/kernel-debian"
memory = '512'
root = '/dev/sda6 ro console=/dev/xvc0'
disk = [ 'file:/data/debian.5-0.x86.img,/dev/sda6,w', 'file:/data/swap.img,/dev/sda5,w' ]
name = 'debian'
#vif = [ 'type=ioemu,bridge=eth0' ]
vif = [ 'bridge=eth0,ip=192.168.123.100,mac=00:1d:72:57:9a:a5']
#vif = [ 'bridge=xenbr0' ]
#vif = []
#vif = ['']
#dhcp = "dhcp"
on_reboot = 'restart'
on_crash = 'restart'
As you can see i've been playing w/ the vif option to see if something works. Not success so far :(
I copied /boot/domU kernel to a directory, named /data. The .img i downloaded it from
http://stacklet.com/.
I built the swap partition with these commands
dd if=/dev/zero of=/data/xen/domains/swap.img bs=1M count=1k
mkswap /data/xen/domains/swap.img
I start the vm using xm create vm-debian.cfg -c but i always get Error: Device 0 (vif) could not be connected. Hotplug scripts not working.
/var/log/xen/xen-hotplug.log show this
xenstore-read: couldn't read path backend/vbd/2/2053/node
can't add vif1.0 to bridge eth0: Operation not supported
xenstore-read: couldn't read path backend/vbd/1/2053/node
can't add vif1.0 to bridge eth0: Operation not supported
xenstore-read: couldn't read path backend/vbd/1/2053/node
can't add vif2.0 to bridge eth0: Operation not supported
xenstore-read: couldn't read path backend/vbd/2/2053/node
xenstore-read: couldn't read path backend/vbd/1/2053/node
can't add vif2.0 to bridge eth0: Operation not supported
xenstore-read: couldn't read path backend/vbd/2/2053/node
can't add vif3.0 to bridge eth0: Operation not supported
xenstore-read: couldn't read path backend/vbd/3/2053/node
/var/log/xen/xend-debug.log has this
cat: /sys/bus/scsi/devices/host0/scsi_level: No such file or directory
cat: /sys/bus/scsi/devices/host1/vendor: No such file or directory
cat: /sys/bus/scsi/devices/host1/model: No such file or directory
cat: /sys/bus/scsi/devices/host1/type: No such file or directory
cat: /sys/bus/scsi/devices/host1/rev: No such file or directory
cat: /sys/bus/scsi/devices/host1/scsi_level: No such file or directory
cat: /sys/bus/scsi/devices/host2/vendor: No such file or directory
cat: /sys/bus/scsi/devices/host2/model: No such file or directory
cat: /sys/bus/scsi/devices/host2/type: No such file or directory
cat: /sys/bus/scsi/devices/host2/rev: No such file or directory
cat: /sys/bus/scsi/devices/host2/scsi_level: No such file or directory
cat: /sys/bus/scsi/devices/host3/vendor: No such file or directory
cat: /sys/bus/scsi/devices/host3/model: No such file or directory
cat: /sys/bus/scsi/devices/host3/type: No such file or directory
cat: /sys/bus/scsi/devices/host3/rev: No such file or directory
cat: /sys/bus/scsi/devices/host3/scsi_level: No such file or directory
cat: /sys/bus/scsi/devices/target0:0:0/vendor: No such file or directory
cat: /sys/bus/scsi/devices/target0:0:0/model: No such file or directory
cat: /sys/bus/scsi/devices/target0:0:0/type: No such file or directory
cat: /sys/bus/scsi/devices/target0:0:0/rev: No such file or directory
cat: /sys/bus/scsi/devices/target0:0:0/scsi_level: No such file or directory
/usr/lib64/python2.6/site-packages/xen/xend/XendAPI.py:544: DeprecationWarning: object.__new__() takes no parameters return object.__new__(cls, *args, **kwds)
/var/log/xen/xend.log has this
[2010-02-26 09:24:44 2337] DEBUG (XendDomainInfo:1709) XendDomainInfo.handleShutdownWatch
[2010-02-26 09:24:44 2337] DEBUG (DevController:139) Waiting for devices vif.
[2010-02-26 09:24:44 2337] DEBUG (DevController:144) Waiting for 0.
[2010-02-26 09:24:44 2337] DEBUG (DevController:629) hotplugStatusCallback /local/domain/0/backend/vif/3/0/hotplug-status.
[2010-02-26 09:26:24 2337] DEBUG (XendDomainInfo:2732) XendDomainInfo.destroy: domid=3
[2010-02-26 09:26:25 2337] DEBUG (XendDomainInfo:2207) Destroying device model
[2010-02-26 09:26:25 2337] DEBUG (XendDomainInfo:2214) Releasing devices
[2010-02-26 09:26:25 2337] DEBUG (XendDomainInfo:2227) Removing vif/0
[2010-02-26 09:26:25 2337] DEBUG (XendDomainInfo:1134) XendDomainInfo.destroyDevice: deviceClass = vif, device = vif/0
[2010-02-26 09:26:25 2337] DEBUG (XendDomainInfo:2227) Removing console/0
[2010-02-26 09:26:25 2337] DEBUG (XendDomainInfo:1134) XendDomainInfo.destroyDevice: deviceClass = console, device = console/0
[2010-02-26 09:26:25 2337] DEBUG (XendDomainInfo:2227) Removing vbd/2054
[2010-02-26 09:26:25 2337] DEBUG (XendDomainInfo:1134) XendDomainInfo.destroyDevice: deviceClass = vbd, device = vbd/2054
[2010-02-26 09:26:25 2337] DEBUG (XendDomainInfo:2227) Removing vbd/2053
[2010-02-26 09:26:25 2337] DEBUG (XendDomainInfo:1134) XendDomainInfo.destroyDevice: deviceClass = vbd, device = vbd/2053
[2010-02-26 09:26:25 2337] DEBUG (XendDomainInfo:2212) No device model
[2010-02-26 09:26:25 2337] DEBUG (XendDomainInfo:2214) Releasing devices
[2010-02-26 09:26:25 2337] DEBUG (DevController:629) hotplugStatusCallback /local/domain/0/backend/vif/3/0/hotplug-status.
[2010-02-26 09:26:25 2337] DEBUG (DevController:629) hotplugStatusCallback /local/domain/0/backend/vif/3/0/hotplug-status.
[2010-02-26 09:26:25 2337] DEBUG (DevController:629) hotplugStatusCallback /local/domain/0/backend/vif/2/0/hotplug-status.
[2010-02-26 09:26:25 2337] DEBUG (DevController:629) hotplugStatusCallback /local/domain/0/backend/vif/3/0/hotplug-status.
[2010-02-26 09:26:25 2337] DEBUG (DevController:629) hotplugStatusCallback /local/domain/0/backend/vif/2/0/hotplug-status.
[2010-02-26 09:26:25 2337] DEBUG (DevController:629) hotplugStatusCallback /local/domain/0/backend/vif/3/0/hotplug-status.
I read somewhere that it could be an udev problem: i updated it...didn't work.
I installed hotplug from gentoo repositories, even though new kernels versions have it...didn't work.
* I wish I could provide better insight as to your "Device 0 (vif) could not be connected.Hotplugscripts not working" error. I am finding that getting the perfect kernel configuration is a daunting task myself.
Later, i'm gonna try using a different .img file...maybe it could be the problem, not sure. Hopefully w/ the nformation i gave someone could give a clue where to start looking. If need more info for me, feel free to ask.
Sorry if i missed something.
Thanks in advance!! xD
-M