[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [Qemu-devel] qemu mainline regression with xen-unstable: unable to start QMP



On Thu, 4 Jun 2015, Don Slutz wrote:
> ----- Topal: Output generated on Fri Jun  5 11:09:19 BST 2015
> ----- Topal: GPG output starts -----
> gpg: Signature made Thu 04 Jun 2015 23:20:41 BST using RSA key ID F1ABD29C
> gpg: Can't check signature: public key not found
> ----- Topal: GPG output ends -----
> ----- Topal: Original message starts -----
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
> 
> On 06/04/15 18:10, Eric Blake wrote:
> > [adding Markus, as author of the regression]
> > 
> > On 06/04/2015 03:59 PM, Don Slutz wrote:
> >> On 06/04/15 11:04, Fabio Fantoni wrote:
> >>> Today after trying xen-unstable build (tested many hours) of
> >>> some days ago I tried update qemu to latest development version
> >>> (from git master commit
> >>> 6fa6b312765f698dc81b2c30e7eeb9683804a05b) and seems that there
> >>> is a regression:
> >>>> xl create /etc/xen/W7.cfg Parsing config from
> >>>> /etc/xen/W7.cfg libxl: error:
> >>>> libxl_qmp.c:287:qmp_handle_error_response: received an error
> >>>> message from QMP server: QMP input object member 'id' is
> >>>> unexpected libxl: error:
> >>>> libxl_qmp.c:715:libxl__qmp_initialize: Failed to connect to
> >>>> QMP
> >>> 
> >> 
> >> This is caused by:
> >> 
> >> commit 65207c59d99f2260c5f1d3b9c491146616a522aa Author: Markus
> >> Armbruster <armbru@xxxxxxxxxx> Date:   Thu Mar 5 14:35:26 2015
> >> +0100
> >> 
> >> monitor: Drop broken, unused asynchronous command interface
> >> 
> > 
> >> The patch:
> >> 
> >>> From 1b0221078353870fe530e49de158cae205f9bce5 Mon Sep 17
> >>> 00:00:00 2001
> >> From: Don Slutz <dslutz@xxxxxxxxxxx> Date: Thu, 4 Jun 2015
> >> 17:04:42 -0400 Subject: [PATCH 01/14] monitor: Allow Xen's
> >> (broken) usage of asynchronous command interface.
> >> 
> >> commit 65207c59d99f2260c5f1d3b9c491146616a522aa Author: Markus
> >> Armbruster <armbru@xxxxxxxxxx> Date:   Thu Mar 5 14:35:26 2015
> >> +0100
> >> 
> >> monitor: Drop broken, unused asynchronous command interface
> >> 
> >> Breaks Xen.  Add a hack un unbreak it.
> > 
> > s/un /to /
> 
> Sigh, will fix.
> 
> > 
> >> 
> >> Xen is only doing synchronous commands, but is including an id.
> > 
> > QMP also uses id, but apparently removes it up front before calling
> > into this function; so another fix would be having xen remove it up
> > front.
> > 
> 
> Hopefully I will get to a change to Xen.  However getting the Xen
> change back-ported to enough version(s) will not be quick...

Yeah, this is basically an ABI breakage.

We have been trying to keep QEMU and Xen working together reasonably
well without the need to specify that only QEMU newer than XXX or older
than YYY work with Xen 4.x. This change would make it very difficult to
do so.


> >> 
> >> Signed-off-by: Don Slutz <dslutz@xxxxxxxxxxx> --- monitor.c | 9
> >> +++++++++ 1 file changed, 9 insertions(+)
> >> 
> >> diff --git a/monitor.c b/monitor.c index c7baa91..e9a0747 100644 
> >> --- a/monitor.c +++ b/monitor.c @@ -4955,6 +4955,15 @@ static
> >> QDict *qmp_check_input_obj(QObject *input_obj, Error **errp) 
> >> "arguments", "object"); return NULL; } +        } else if
> >> (!strcmp(arg_name, "id")) { +            /* +             * Fixup
> >> Xen's usage. Just ignore the "id". See point #5 +             *
> >> above.  This was an attempt at an asynchronous +             *
> >> command interface.  However commit +             *
> >> 65207c59d99f2260c5f1d3b9c491146616a522aa is +             *
> >> wrong. Xen does not expect an error when it passes in +
> >> * "id":1, so just continue to ignore it. +             */
> > 
> > The comment is a bit verbose, particularly since 'id' is a 
> > well-established usage pattern in QMP.  Also, we don't need to call
> > out why it changed in the comment here, the commit message is
> > sufficient for that.
> > 
> 
> Ok, will also see if Markus has anything to say.
> 
>    -Don Slutz
> 
> >> } else { error_set(errp, QERR_QMP_EXTRA_MEMBER, arg_name); return
> >> NULL;
> >> 
> > 
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v2.0.14 (GNU/Linux)
> 
> iQIcBAEBAgAGBQJVcM85AAoJEMH0lYjxq9Kcvd0QAK5H6/2NUvqKCO/zje/8cXsT
> ueLOYG4keNWJ3x7XGpOAWqIuYc673uYjApEquSpR2TRyhHwB2ZuShEjtCA5bakOH
> VJJ03uLq+vrQo0Hxm8oR5/7C2w0L2GkpzGnqUlmZ6/9RNbDHGmGS6PSUC5xbwICM
> 6v31k0b89HG4AmAxg3/O5qeBe9m/pL+OeDjKXc6zbr7xhUIq4lxtx0VEy4HAGReS
> V8+MLDJ73T6o6FUD6U/EcCmK/6GuMMG0jwZsVgbBvbeGmT1tP8Z9YMjpf3X393ZG
> Il9LaUNCzhJRcWVOc4UBM8du3FLcHX4fviYyW5uEXt4aJdSoijd4BAv2znyyndmu
> oep7vEc5w/VkXKuXxg1hTokCqvkLEK6WYD4M+i1huiBuNs3qQop6euqYV97tEsl3
> h3fjhibkZRbIVsm6vrm41Jr75ZDnbftPMAINc9aYvvstNrxBrR7u7sw6gwAY1n6+
> e5gyy5l5P6/R3LS4s41oXSOiCk7pndPp3AilOZ863MS5TJFXLfo1z0wEQ471A2hT
> NHvi+o4G2iKZ33MAB9Jq6hmWveJbs8sY+Fm/IWeZn/dDt7ohn8V+rFIX3LEYfDMN
> cknhMSRpKD9eRSo4LM4xU9kq1J5spaewDbkGkl7e6pHVTWphLlkk/cT2W9crW3ji
> PybnLaIJP2/aljcLfdYK
> =lEbh
> -----END PGP SIGNATURE-----
> ----- Topal: Original message ends -----
> 

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.