[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [RFC] monitor: turn on Out-Of-Band by default again
From: |
Daniel P . Berrangé |
Subject: |
Re: [Qemu-devel] [RFC] monitor: turn on Out-Of-Band by default again |
Date: |
Mon, 21 May 2018 09:59:07 +0100 |
User-agent: |
Mutt/1.9.5 (2018-04-13) |
On Mon, May 21, 2018 at 04:42:49PM +0800, Peter Xu wrote:
> We turned Out-Of-Band feature of monitors off for 2.12 release. Now we
> try to turn that on again.
>
> Signed-off-by: Peter Xu <address@hidden>
> --
> Now OOB should be okay with all known tests (except iotest qcow2, since
> it is still broken on master), and AFAIK now we should also be okay with
> ARM+Libvirt (not testsed, but Eric Auger helped to verify that before
> the release). So I think it's now safe to turn OOB on again. Please
> feel free to test this against any of existing testsuites to see whether
> it'll still break any stuff. Thanks,
Can you remind us what the problem was with ARM+Libvirt that this
caused ?
>
> Signed-off-by: Peter Xu <address@hidden>
> ---
> monitor.c | 13 +++----------
> tests/qmp-test.c | 2 +-
> vl.c | 9 ++++-----
> 3 files changed, 8 insertions(+), 16 deletions(-)
>
> diff --git a/monitor.c b/monitor.c
> index 46814af533..ce5cc5e34e 100644
> --- a/monitor.c
> +++ b/monitor.c
> @@ -4560,16 +4560,9 @@ void monitor_init(Chardev *chr, int flags)
> bool use_readline = flags & MONITOR_USE_READLINE;
> bool use_oob = flags & MONITOR_USE_OOB;
>
> - if (use_oob) {
> - if (CHARDEV_IS_MUX(chr)) {
> - error_report("Monitor Out-Of-Band is not supported with "
> - "MUX typed chardev backend");
> - exit(1);
> - }
> - if (use_readline) {
> - error_report("Monitor Out-Of-band is only supported by QMP");
> - exit(1);
> - }
> + if (CHARDEV_IS_MUX(chr)) {
> + /* MUX is still not supported for Out-Of-Band */
> + use_oob = false;
> }
>
> monitor_data_init(mon, false, use_oob);
> diff --git a/tests/qmp-test.c b/tests/qmp-test.c
> index 88f867f8c0..c85a3964d9 100644
> --- a/tests/qmp-test.c
> +++ b/tests/qmp-test.c
> @@ -89,7 +89,7 @@ static void test_qmp_protocol(void)
> g_assert(q);
> test_version(qdict_get(q, "version"));
> capabilities = qdict_get_qlist(q, "capabilities");
> - g_assert(capabilities && qlist_empty(capabilities));
> + g_assert(capabilities);
> qobject_unref(resp);
>
> /* Test valid command before handshake */
> diff --git a/vl.c b/vl.c
> index 3b39bbd7a8..b71fb8eb25 100644
> --- a/vl.c
> +++ b/vl.c
> @@ -2394,6 +2394,10 @@ static int mon_init_func(void *opaque, QemuOpts *opts,
> Error **errp)
> flags = MONITOR_USE_READLINE;
> } else if (strcmp(mode, "control") == 0) {
> flags = MONITOR_USE_CONTROL;
> + /* Out-Of-Band is on by default */
> + if (qemu_opt_get_bool(opts, "x-oob", 1)) {
> + flags |= MONITOR_USE_OOB;
> + }
> } else {
> error_report("unknown monitor mode \"%s\"", mode);
> exit(1);
> @@ -2402,11 +2406,6 @@ static int mon_init_func(void *opaque, QemuOpts *opts,
> Error **errp)
> if (qemu_opt_get_bool(opts, "pretty", 0))
> flags |= MONITOR_USE_PRETTY;
>
> - /* OOB is off by default */
> - if (qemu_opt_get_bool(opts, "x-oob", 0)) {
> - flags |= MONITOR_USE_OOB;
> - }
> -
> chardev = qemu_opt_get(opts, "chardev");
> chr = qemu_chr_find(chardev);
> if (chr == NULL) {
> --
> 2.17.0
>
Regards,
Daniel
--
|: https://berrange.com -o- https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org -o- https://fstop138.berrange.com :|
|: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|