[libvirt] [PATCHv3] qemu: monitor: Refactor and fix monitor checking
Peter Krempa
pkrempa at redhat.com
Thu Apr 16 12:52:20 UTC 2015
On Thu, Apr 16, 2015 at 14:38:25 +0200, Jiri Denemark wrote:
> On Wed, Apr 15, 2015 at 16:27:35 +0200, Peter Krempa wrote:
> > Among all the monitor APIs some where checking if mon is NULL and some
> > were not. Since it's possible to have mon equal to NULL in case a second
> > call is attempted once entered the monitor. This requires that every
> > single API checks for the monitor.
> >
> > This patch adds a macro that helps checking the state of the monitor and
> > either refactors existing checking code to use the macro or adds it in
> > case it was missing.
> > ---
> >
> > Notes:
> > Version 3:
> > - fixed the check in qemuMonitorGetAllBlockStatsInfo by moving it before the allocation
> > - added macros for all the return value combinations
> > - removed 'mon' from existing VIR_DEBUG macros
> >
> > src/qemu/qemu_monitor.c | 1151 ++++++++++++-----------------------------------
> > src/qemu/qemu_monitor.h | 18 +-
> > 2 files changed, 292 insertions(+), 877 deletions(-)
> >
> > diff --git a/src/qemu/qemu_monitor.c b/src/qemu/qemu_monitor.c
> > index 1f95547..6d7562d 100644
> > --- a/src/qemu/qemu_monitor.c
> > +++ b/src/qemu/qemu_monitor.c
> ...
> > @@ -4418,16 +3839,12 @@ int
> > qemuMonitorGetMemoryDeviceInfo(qemuMonitorPtr mon,
> > virHashTablePtr *info)
> > {
> > - VIR_DEBUG("mon=%p info=%p", mon, info);
> > + VIR_DEBUG("info=%p", info);
> > int ret;
> >
> > *info = NULL;
> >
> > - if (!mon) {
> > - virReportError(VIR_ERR_INVALID_ARG, "%s",
> > - _("monitor must not be NULL"));
> > - return -1;
> > - }
> > + QEMU_CHECK_MONITOR_JSON(mon);
>
> s/QEMU_CHECK_MONITOR_JSON/QEMU_CHECK_MONITOR/ because of:
oh, right. I screwed up the last one :)
>
> > if (!mon->json)
> > return -2;
>
> The rest looks correct.
>
> ACK once you fix this last issue.
Pushed; Thanks.
Peter
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://listman.redhat.com/archives/libvir-list/attachments/20150416/b124746a/attachment-0001.sig>
More information about the libvir-list
mailing list