yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #49624
[Bug 1478607] Re: libvirt: serial console ports count upper limit needs to be checked
Reviewed: https://review.openstack.org/207373
Committed: https://git.openstack.org/cgit/openstack/nova/commit/?id=b67614fe878ea3b6bb6240f9989a21c2c3c0b2df
Submitter: Jenkins
Branch: master
commit b67614fe878ea3b6bb6240f9989a21c2c3c0b2df
Author: lyanchih <lyan.h@xxxxxxxxxxxxxx>
Date: Thu Jul 30 09:16:16 2015 +0000
libvirt: serial console ports count upper limit needs to be checked
There is a limit of 4 serial ports on qemu_x86. If number of serial port
over limit, qemu will throw error message with
"libvirtError: internal error:
process exited while connecting to monitor: qemu-system-x86_64: -device
isa-serial,chardev=charserial4, id=serial4: Max. supported number of ISA
serial ports is 4."
We should check upper limit of serial console port.
Change-Id: Id14c94dd658868037eeab1524a9984354cdb4071
Closes-Bug: 1478607
** Changed in: nova
Status: In Progress => Fix Released
--
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to OpenStack Compute (nova).
https://bugs.launchpad.net/bugs/1478607
Title:
libvirt: serial console ports count upper limit needs to be checked
Status in OpenStack Compute (nova):
Fix Released
Bug description:
This bug is based on Daniel Berrange's comment on [1].
"There is a limit of 4 serial ports on x86, [...] guest will have
5 consoles and will fail to boot with a QEMU error."
The number of serial ports a guest will have can be influenced by
* the image properties: "hw_serial_port_count"
* and the flavor extra specs: "hw:serial_port_count"
The upper limit of 4 serial ports (on x86) is not checked in the code
but should be. Otherwise it is possible to prevent the boot of the
guest.
This observation is based on nova master:
183cd889 2015-07-26 Merge "remove _rescan_iscsi fr[...]
Steps to reproduce
-----------------------
1) setup OpenStack with an libvirt/kvm on x86 compute node
2) set image property "hw_serial_port_count" to 6
3) launch instance from that image
CLI:
glance image-update cirros-0.3.4-x86_64-uec \
--property hw_serial_port_count=6
nova boot test_serial_port_count --flavor m1.tiny \
--image cirros-0.3.4-x86_64-uec
nova list
Expected result
---------------
The request fails with an error message that explains that the upper
limit of serial ports on x86 is 4.
At least the documentation in [3]
- image hw_serial_port_count=6
VM gets 6 serial ports
can be updated to reflect that limitation.
Actual result
-------------
Instance get scheduled on a compute node [2] and is in ERROR state.
horizon shows:
No valid host was found. There are not enough hosts available.
Code 500
nova-compute.log shows:
libvirtError: internal error: process exited while connecting to
monitor: qemu-system-x86_64: -device isa-serial,chardev=charserial4,
id=serial4: Max. supported number of ISA serial ports is 4.
qemu-system-x86_64: -device isa-serial,chardev=charserial4,
id=serial4: Device 'isa-serial' could not be initialized
References
----------
[1] https://review.openstack.org/#/c/188058/
[2] Instance's domain XML: http://paste.openstack.org/show/405929/
[3] def get_number_of_serial_ports; https://github.com/openstack/nova/blob/master/nova/virt/hardware.py#L168
To manage notifications about this bug go to:
https://bugs.launchpad.net/nova/+bug/1478607/+subscriptions
References