Description of problem: If creating a domain using libvirt (eg, virsh create foo.xml), and the config file is set to use pygrub for boot, the VNC paravirt console does not get activated. If creating the same domain with an explicitly specified kernel & initrd instead of pygrub, VNC works as expected Version-Release number of selected component (if applicable): libvirt-0.1.7 How reproducible: ALWAYS Steps to Reproduce: 1. Identify a domain 'somedomain' running with pygrub & VNC 2. Run 'virsh dumpxml somedomain > somedomain.xml' 3. Run 'virsh destroy somedomain' 4. Edit 'somdomain.xml' and remove the <os>...</os> block from the XML 5. Run 'virsh create somedomain.xml' Actual results: No VNC console is setup Expected results: Paravirt VNC console is setup Additional info: The problem is actually partly in xend. The XenD sexpr for VNC has the '(vnc 1)' within the '(image (linux ...))' SEXPR block. When using PyGrub though, there is no '(image (liunux...))' block, so there is nowhere for libvirt to put the "(vnc 1)' bit required to activate the paravirt framebuffer. XenD needs to be fixed to always check for a (image (linux (vnc 1))) block, even if using pygrub, and then libvirt can be fixed to pass along VNC info all the time.
Created attachment 139265 [details] Pass along VNC settings, even when using bootloader The attached patch makes libvirt pass in VNC settings in a (image) block, even when using a bootloader. Needs a corresponding patch to XenD to work correctly.
This request was evaluated by Red Hat Product Management for inclusion in a Red Hat Enterprise Linux major release. Product Management has requested further review of this request by Red Hat Engineering, for potential inclusion in a Red Hat Enterprise Linux Major release. This request is not yet committed for inclusion.
QE ack for RHEL5.
The new generation paravirt framebuffer patches included in recent RHEL-5 xen packages completely changed the config file format. As such the problem described in this bug no longer exists.