[libvirt] 0.9.7 virsh console regression?

Hi folks, I have a few "headless" qemu domains that use serial consoles. Typically i connect to the consoles with # virsh console <domain> However with 0.9.7 I get Connected to domain gentoo-base Escape character is ^] error: internal error character device (null) is not using a PTY I am still able to connect to the console if i go into the virt-manager gui and use the "gui" console, but I'd rather not do that as sometimes I don't have access to the gui. Is this a regression or am I expected to do some kind of migration on my domains. These are qemu guests running on Gentoo Linux. An xml dump of a typical domain follows: <domain type='kvm'> <name>base</name> <uuid>b4a528dd-4c31-03ca-bdde-795c4c38592d</uuid> <memory>524288</memory> <currentMemory>61440</currentMemory> <vcpu>1</vcpu> <os> <type arch='x86_64' machine='pc-0.12'>hvm</type> <kernel>/var/lib/libvirt/images/vmlinuz</kernel> <cmdline>root=/dev/vda1 rootfstype=ext4 quiet console=ttyS0 TERM=vt100</cmdline> <boot dev='hd'/> <bootmenu enable='no'/> </os> <features> <acpi/> <pae/> </features> <cpu match='exact'> <model>Nehalem</model> <vendor>Intel</vendor> <feature policy='require' name='tm2'/> <feature policy='require' name='est'/> <feature policy='require' name='monitor'/> <feature policy='require' name='ss'/> <feature policy='require' name='vme'/> <feature policy='require' name='rdtscp'/> <feature policy='require' name='ht'/> <feature policy='require' name='ds'/> <feature policy='require' name='pbe'/> <feature policy='require' name='tm'/> <feature policy='require' name='vmx'/> <feature policy='require' name='ds_cpl'/> <feature policy='require' name='xtpr'/> <feature policy='require' name='acpi'/> <feature policy='require' name='x2apic'/> </cpu> <clock offset='utc'/> <on_poweroff>destroy</on_poweroff> <on_reboot>restart</on_reboot> <on_crash>restart</on_crash> <devices> <emulator>/usr/bin/qemu-kvm</emulator> <disk type='file' device='disk'> <driver name='qemu' type='qcow2' cache='none'/> <source file='/var/lib/libvirt/images/base.qcow'/> <target dev='vda' bus='virtio'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/> </disk> <interface type='network'> <mac address='52:54:00:06:84:c0'/> <source network='default'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/> </interface> <serial type='pty'> <target port='0'/> </serial> <console type='pty'> <target type='serial' port='0'/> </console> <memballoon model='virtio'> <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/> </memballoon> </devices> </domain> Thanks in advance, -a

On Wed, Nov 09, 2011 at 06:26:41PM -0500, Albert W. Hopkins wrote:
Hi folks,
I have a few "headless" qemu domains that use serial consoles. Typically i connect to the consoles with
# virsh console <domain>
However with 0.9.7 I get
Connected to domain gentoo-base Escape character is ^] error: internal error character device (null) is not using a PTY
I am seeing this error as well with the current git HEAD a132fb092574843d104d227d5ead7c5dfcc74850 Dave
I am still able to connect to the console if i go into the virt-manager gui and use the "gui" console, but I'd rather not do that as sometimes I don't have access to the gui.
Is this a regression or am I expected to do some kind of migration on my domains. These are qemu guests running on Gentoo Linux. An xml dump of a typical domain follows:
<domain type='kvm'> <name>base</name> <uuid>b4a528dd-4c31-03ca-bdde-795c4c38592d</uuid> <memory>524288</memory> <currentMemory>61440</currentMemory> <vcpu>1</vcpu> <os> <type arch='x86_64' machine='pc-0.12'>hvm</type> <kernel>/var/lib/libvirt/images/vmlinuz</kernel> <cmdline>root=/dev/vda1 rootfstype=ext4 quiet console=ttyS0 TERM=vt100</cmdline> <boot dev='hd'/> <bootmenu enable='no'/> </os> <features> <acpi/> <pae/> </features> <cpu match='exact'> <model>Nehalem</model> <vendor>Intel</vendor> <feature policy='require' name='tm2'/> <feature policy='require' name='est'/> <feature policy='require' name='monitor'/> <feature policy='require' name='ss'/> <feature policy='require' name='vme'/> <feature policy='require' name='rdtscp'/> <feature policy='require' name='ht'/> <feature policy='require' name='ds'/> <feature policy='require' name='pbe'/> <feature policy='require' name='tm'/> <feature policy='require' name='vmx'/> <feature policy='require' name='ds_cpl'/> <feature policy='require' name='xtpr'/> <feature policy='require' name='acpi'/> <feature policy='require' name='x2apic'/> </cpu> <clock offset='utc'/> <on_poweroff>destroy</on_poweroff> <on_reboot>restart</on_reboot> <on_crash>restart</on_crash> <devices> <emulator>/usr/bin/qemu-kvm</emulator> <disk type='file' device='disk'> <driver name='qemu' type='qcow2' cache='none'/> <source file='/var/lib/libvirt/images/base.qcow'/> <target dev='vda' bus='virtio'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/> </disk> <interface type='network'> <mac address='52:54:00:06:84:c0'/> <source network='default'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/> </interface> <serial type='pty'> <target port='0'/> </serial> <console type='pty'> <target type='serial' port='0'/> </console> <memballoon model='virtio'> <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/> </memballoon> </devices> </domain>
Thanks in advance, -a
-- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list

On 10.11.2011 00:26, Albert W. Hopkins wrote:
Hi folks,
I have a few "headless" qemu domains that use serial consoles. Typically i connect to the consoles with
# virsh console <domain>
However with 0.9.7 I get
Connected to domain gentoo-base Escape character is ^] error: internal error character device (null) is not using a PTY
I am still able to connect to the console if i go into the virt-manager gui and use the "gui" console, but I'd rather not do that as sometimes I don't have access to the gui.
Is this a regression or am I expected to do some kind of migration on my domains.
Yes, it is a regression. Runnig git bisect says it's caused by this patch: 0873b688c6771a6901d7ec95f5b8e88cc957947b is the first bad commit commit 0873b688c6771a6901d7ec95f5b8e88cc957947b Author: Daniel P. Berrange <berrange@redhat.com> Date: Wed Feb 23 18:27:23 2011 +0000 Allow multiple consoles per virtual guest While Xen only has a single paravirt console, UML, and QEMU both support multiple paravirt consoles. The LXC driver can also be trivially made to support multiple consoles. This patch extends the XML to allow multiple <console> elements in the XML. It also makes the UML and QEMU drivers support this config. * src/conf/domain_conf.c, src/conf/domain_conf.h: Allow multiple <console> devices * src/lxc/lxc_driver.c, src/xen/xen_driver.c, src/xenxs/xen_sxpr.c, src/xenxs/xen_xm.c: Update for internal API changes * src/security/security_selinux.c, src/security/virt-aa-helper.c: Only label consoles that aren't a copy of the serial device * src/qemu/qemu_command.c, src/qemu/qemu_driver.c, src/qemu/qemu_process.c, src/uml/uml_conf.c, src/uml/uml_driver.c: Support multiple console devices * tests/qemuxml2xmltest.c, tests/qemuxml2argvtest.c: Extra tests for multiple virtio consoles. Set QEMU_CAPS_CHARDEV for all console /channel tests * tests/qemuxml2argvdata/qemuxml2argv-channel-virtio-auto.args, tests/qemuxml2argvdata/qemuxml2argv-channel-virtio.args tests/qemuxml2argvdata/qemuxml2argv-console-virtio.args: Update for correct chardev syntax * tests/qemuxml2argvdata/qemuxml2argv-console-virtio-many.args, tests/qemuxml2argvdata/qemuxml2argv-console-virtio-many.xml: New test file Let me investigate further and write a patch Michal
participants (3)
-
Albert W. Hopkins
-
Dave Allan
-
Michal Privoznik