* Markus Armbruster (arm...@redhat.com) wrote: > Signed-off-by: Markus Armbruster <arm...@redhat.com> > --- > balloon.c | 29 +++++++++++++++-------------- > 1 file changed, 15 insertions(+), 14 deletions(-) > > diff --git a/balloon.c b/balloon.c > index 2884c2d..aa30617 100644 > --- a/balloon.c > +++ b/balloon.c > @@ -36,6 +36,19 @@ static QEMUBalloonEvent *balloon_event_fn; > static QEMUBalloonStatus *balloon_stat_fn; > static void *balloon_opaque; > > +static int have_ballon(Error **errp)
^ An 'o' escaped from your balloon. Dave > +{ > + if (kvm_enabled() && !kvm_has_sync_mmu()) { > + error_set(errp, QERR_KVM_MISSING_CAP, "synchronous MMU", "balloon"); > + return 0; > + } > + if (!balloon_event_fn) { > + error_set(errp, QERR_DEVICE_NOT_ACTIVE, "balloon"); > + return 0; > + } > + return 1; > +} > + > int qemu_add_balloon_handler(QEMUBalloonEvent *event_func, > QEMUBalloonStatus *stat_func, void *opaque) > { > @@ -66,13 +79,7 @@ BalloonInfo *qmp_query_balloon(Error **errp) > { > BalloonInfo *info; > > - if (kvm_enabled() && !kvm_has_sync_mmu()) { > - error_set(errp, QERR_KVM_MISSING_CAP, "synchronous MMU", "balloon"); > - return NULL; > - } > - > - if (!balloon_stat_fn) { > - error_set(errp, QERR_DEVICE_NOT_ACTIVE, "balloon"); > + if (!have_ballon(errp)) { > return NULL; > } > > @@ -83,8 +90,7 @@ BalloonInfo *qmp_query_balloon(Error **errp) > > void qmp_balloon(int64_t target, Error **errp) > { > - if (kvm_enabled() && !kvm_has_sync_mmu()) { > - error_set(errp, QERR_KVM_MISSING_CAP, "synchronous MMU", "balloon"); > + if (!have_ballon(errp)) { > return; > } > > @@ -92,11 +98,6 @@ void qmp_balloon(int64_t target, Error **errp) > error_set(errp, QERR_INVALID_PARAMETER_VALUE, "target", "a size"); > return; > } > - > - if (!balloon_event_fn) { > - error_set(errp, QERR_DEVICE_NOT_ACTIVE, "balloon"); > - return; > - } > > trace_balloon_event(balloon_opaque, target); > balloon_event_fn(balloon_opaque, target); > -- > 1.9.3 > > -- Dr. David Alan Gilbert / dgilb...@redhat.com / Manchester, UK