On 13/01/2015 04:34, John Snow wrote: > Add a va_list variant of the qtest_boot function. > > Signed-off-by: John Snow <js...@redhat.com> > --- > tests/libqos/libqos.c | 25 +++++++++++++++++++------ > tests/libqos/libqos.h | 1 + > 2 files changed, 20 insertions(+), 6 deletions(-) > > diff --git a/tests/libqos/libqos.c b/tests/libqos/libqos.c > index c478bc9..c8b3ef0 100644 > --- a/tests/libqos/libqos.c > +++ b/tests/libqos/libqos.c > @@ -16,16 +16,13 @@ > * Launch QEMU with the given command line, > * and then set up interrupts and our guest malloc interface. > */ > -QOSState *qtest_boot(const char *cmdline_fmt, ...) > +QOSState *qtest_vboot(const char *cmdline_fmt, va_list ap) > { > - QOSState *qs = g_malloc(sizeof(QOSState)); > char *cmdline; > - va_list ap; > > - va_start(ap, cmdline_fmt); > + struct QOSState *qs = g_malloc(sizeof(QOSState)); > + > cmdline = g_strdup_vprintf(cmdline_fmt, ap); > - va_end(ap); > - > qs->qts = qtest_start(cmdline); > qtest_irq_intercept_in(global_qtest, "ioapic"); > qs->alloc = pc_alloc_init(); > @@ -35,6 +32,22 @@ QOSState *qtest_boot(const char *cmdline_fmt, ...) > } > > /** > + * Launch QEMU with the given command line, > + * and then set up interrupts and our guest malloc interface. > + */ > +QOSState *qtest_boot(const char *cmdline_fmt, ...) > +{ > + QOSState *qs; > + va_list ap; > + > + va_start(ap, cmdline_fmt); > + qs = qtest_vboot(cmdline_fmt, ap); > + va_end(ap); > + > + return qs; > +} > + > +/** > * Tear down the QEMU instance. > */ > void qtest_shutdown(QOSState *qs) > diff --git a/tests/libqos/libqos.h b/tests/libqos/libqos.h > index 7a106f2..7ae0a8d 100644 > --- a/tests/libqos/libqos.h > +++ b/tests/libqos/libqos.h > @@ -10,6 +10,7 @@ typedef struct QOSState { > QGuestAllocator *alloc; > } QOSState; > > +QOSState *qtest_vboot(const char *cmdline_fmt, va_list ap); > QOSState *qtest_boot(const char *cmdline_fmt, ...); > void qtest_shutdown(QOSState *qs); > >
Reviewed-by: Paolo Bonzini <pbonz...@redhat.com>