On 02/29/2016 08:33 AM, Daniel P. Berrange wrote: > This series of patches does two things > > * Converts the type=file chardev over to use virtlogd > (assuming use of virtlogd is enabled in qemu.conf) > > * Adds a <log file="..."/> element to all chardev > sources, allowing data to be captured to a logfile > > Both of these are important features wanted by openstack. > The first thing fixes a long standing security issue that > a guest OS can trivially exhuast host disk space by outputing > lots of data to its serial port. > > The second thing allows OpenStack to record boot up > messages for a guest's serial console, while still > allowing interactive serial console ussage. ie the > serial port will be configured with type=tcp, and > the new <log> element used to record the data. > > Both these thing required changes in QEMU, which have > been merged for the forthcoming QEMU 2.6 release. > > Changed in v2: > > * Split patch 4 up into 4 separate patches > * Fix memory leaks > * Use common function for building log manager cli args > * Add missing XML docs > > Daniel P. Berrange (8): > logging: allow inode/offset params to be NULL > conf: allow use of a logfile with chardev backends > qemu: add support for logging chardev output to a file > qemu: don't append -chardev arg until after value is formatted > qemu: move functions for handling FD passing > logging: support truncation of logfiles when opening > qemu: use virtlogd for character device log files > qemu: support use of virtlogd with file based chardevs > > docs/formatdomain.html.in | 14 + > docs/schemas/domaincommon.rng | 12 + > src/conf/domain_conf.c | 30 +++ > src/conf/domain_conf.h | 2 + > src/logging/log_daemon_dispatch.c | 3 +- > src/logging/log_handler.c | 6 +- > src/logging/log_handler.h | 2 +- > src/logging/log_manager.c | 6 +- > src/logging/log_manager.h | 2 + > src/logging/log_protocol.x | 4 + > src/qemu/qemu_capabilities.c | 2 + > src/qemu/qemu_capabilities.h | 1 + > src/qemu/qemu_command.c | 282 ++++++++++++++------- > src/qemu/qemu_command.h | 9 +- > src/qemu/qemu_domain.c | 6 + > src/qemu/qemu_domain.h | 3 + > src/qemu/qemu_driver.c | 2 +- > src/qemu/qemu_process.c | 4 +- > .../qemuxml2argv-serial-file-log.args | 25 ++ > .../qemuxml2argv-serial-file-log.xml | 39 +++ > tests/qemuxml2argvtest.c | 4 +- > 21 files changed, 353 insertions(+), 105 deletions(-) > create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-serial-file-log.args > create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-serial-file-log.xml > As you know patch 3 (qemu_capabilities.{c|h} & 7 (qemu_command.c) will require handling merge conflicts... ACK series modulo a couple of nits pointed out. John -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list