From: "Andreas Färber" <afaerber@suse.de>
To: Peter Maydell <peter.maydell@linaro.org>
Cc: Peter Crosthwaite <peter.crosthwaite@xilinx.com>,
Stefan Hajnoczi <stefanha@redhat.com>,
"Michael S. Tsirkin" <mst@redhat.com>,
Markus Armbruster <armbru@redhat.com>,
QEMU Developers <qemu-devel@nongnu.org>,
Alexander Graf <agraf@suse.de>, Bandan Das <bsd@redhat.com>,
Anthony Liguori <anthony@codemonkey.ws>,
Paolo Bonzini <pbonzini@redhat.com>
Subject: Re: [Qemu-devel] [PULL for-2.0-rc0 00/31] QOM devices patch queue 2014-03-12
Date: Thu, 13 Mar 2014 01:19:29 +0100 [thread overview]
Message-ID: <5320F991.8030705@suse.de> (raw)
In-Reply-To: <CAFEAcA-phf8Y9nGKKC2NSvo0=r2CuwKgNY-kMxXm-SZ12xCDsw@mail.gmail.com>
Am 12.03.2014 23:42, schrieb Peter Maydell:
> On 12 March 2014 21:09, Andreas Färber <afaerber@suse.de> wrote:
>> Hello Peter,
>>
>> This is my QOM (devices) patch queue. Please pull.
>
> Hi. I'm afraid this fails make check:
> CC tests/qom-test.o
> /home/petmay01/linaro/qemu-for-merges/tests/qom-test.c: In function ‘qmp’:
> /home/petmay01/linaro/qemu-for-merges/tests/libqtest.h:359:60: sorry,
> unimplemented: function ‘qmp’ can never be inlined because it uses
> variable argument lists
> make: *** [tests/qom-test.o] Error 1
>
> Non-debug build, gcc-4.6.real (Ubuntu/Linaro 4.6.3-1ubuntu5) 4.6.3,
> x86-64.
Can't reproduce with 4.8.1, whether with --enable-debug or without, but
comparing other qmp() uses I noticed that I can simplify my code as follows:
diff --git a/tests/qom-test.c b/tests/qom-test.c
index 550efb8..6d9a00b 100644
--- a/tests/qom-test.c
+++ b/tests/qom-test.c
@@ -46,16 +46,14 @@ static bool is_blacklisted(const char *arch, const
char *mac
h)
static void test_properties(const char *path)
{
- char *cmd, *child_path;
+ char *child_path;
QDict *response, *tuple;
QList *list;
QListEntry *entry;
g_test_message("Obtaining properties of %s", path);
- cmd = g_strdup_printf("{ 'execute': 'qom-list',"
- " 'arguments': { 'path': '%s' } }", path);
- response = qmp(cmd);
- g_free(cmd);
+ response = qmp("{ 'execute': 'qom-list',"
+ " 'arguments': { 'path': '%s' } }", path);
g_assert(response);
g_assert(qdict_haskey(response, "return"));
@@ -70,12 +68,10 @@ static void test_properties(const char *path)
} else {
const char *prop = qdict_get_str(tuple, "name");
g_test_message("Testing property %s.%s", path, prop);
- cmd = g_strdup_printf("{ 'execute': 'qom-get',"
- " 'arguments': { 'path': '%s',"
- " 'property': '%s' } }",
- path, prop);
- response = qmp(cmd);
- g_free(cmd);
+ response = qmp("{ 'execute': 'qom-get',"
+ " 'arguments': { 'path': '%s',"
+ " 'property': '%s' } }",
+ path, prop);
/* qom-get may fail but should not, e.g., segfault. */
g_assert(response);
}
Maybe that helps...
Andreas
--
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg
prev parent reply other threads:[~2014-03-13 0:19 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-03-12 21:09 [Qemu-devel] [PULL for-2.0-rc0 00/31] QOM devices patch queue 2014-03-12 Andreas Färber
2014-03-12 21:09 ` [Qemu-devel] [PULL for-2.0-rc0 01/31] qdev: Fix bus dependency of DeviceState::hotpluggable getter Andreas Färber
2014-03-12 21:09 ` [Qemu-devel] [PULL for-2.0-rc0 02/31] qdev: Set DeviceClass::hotpluggable default in class_init() Andreas Färber
2014-03-12 21:09 ` [Qemu-devel] [PULL for-2.0-rc0 03/31] qdev-monitor: Set properties after parent is assigned in device_add Andreas Färber
2014-03-12 21:09 ` [Qemu-devel] [PULL for-2.0-rc0 04/31] qom: Avoid leaking str and bool properties on failure Andreas Färber
2014-03-12 21:09 ` [Qemu-devel] [PULL for-2.0-rc0 05/31] ssi: Convert legacy SSI_SLAVE -> DEVICE casts Andreas Färber
2014-03-12 21:09 ` [Qemu-devel] [PULL for-2.0-rc0 06/31] ssi: Convert legacy SSI_BUS -> BUS casts Andreas Färber
2014-03-12 21:09 ` [Qemu-devel] [PULL for-2.0-rc0 07/31] misc/max111x: Create abstract max111x type Andreas Färber
2014-03-12 21:09 ` [Qemu-devel] [PULL for-2.0-rc0 08/31] misc/max111x: QOM casting sweep Andreas Färber
2014-03-12 21:09 ` [Qemu-devel] [PULL for-2.0-rc0 09/31] ssi: Remove SSI_SLAVE_FROM_QDEV() macro Andreas Färber
2014-03-12 21:09 ` [Qemu-devel] [PULL for-2.0-rc0 10/31] block/m25p80: Remove FROM_SSI_SLAVE() usages Andreas Färber
2014-03-12 21:09 ` [Qemu-devel] [PULL for-2.0-rc0 11/31] spapr-pci: Change the default PCI bus naming Andreas Färber
2014-03-12 21:09 ` [Qemu-devel] [PULL for-2.0-rc0 12/31] qdev-monitor-test: Simplify using g_assert_cmpstr() Andreas Färber
2014-03-12 21:09 ` [Qemu-devel] [PULL for-2.0-rc0 13/31] qdev-monitor-test: Don't test human-readable error message Andreas Färber
2014-03-12 21:09 ` [Qemu-devel] [PULL for-2.0-rc0 14/31] hw/core: Introduce QEMU machine as QOM object Andreas Färber
2014-03-12 21:09 ` [Qemu-devel] [PULL for-2.0-rc0 15/31] vl: Use MachineClass instead of global QEMUMachine list Andreas Färber
2014-03-12 21:09 ` [Qemu-devel] [PULL for-2.0-rc0 16/31] hw/boards: Convert current_machine to MachineState Andreas Färber
2014-03-12 21:09 ` [Qemu-devel] [PULL for-2.0-rc0 17/31] qom-test: Test QOM properties Andreas Färber
2014-03-12 21:09 ` [Qemu-devel] [PULL for-2.0-rc0 18/31] tests: Clean up IndustryPack TPCI200 gcov paths Andreas Färber
2014-03-12 21:09 ` [Qemu-devel] [PULL for-2.0-rc0 19/31] tests: Add virtio-blk qtest Andreas Färber
2014-03-12 21:09 ` [Qemu-devel] [PULL for-2.0-rc0 20/31] tests: Add virtio-balloon qtest Andreas Färber
2014-03-12 21:09 ` [Qemu-devel] [PULL for-2.0-rc0 21/31] tests: Add virtio-rng qtest Andreas Färber
2014-03-12 21:09 ` [Qemu-devel] [PULL for-2.0-rc0 22/31] tests: Add virtio-scsi qtest Andreas Färber
2014-03-12 21:09 ` [Qemu-devel] [PULL for-2.0-rc0 23/31] tests: Add virtio-serial qtest Andreas Färber
2014-03-12 21:09 ` [Qemu-devel] [PULL for-2.0-rc0 24/31] tests: Add virtio-console qtest Andreas Färber
2014-03-12 21:09 ` [Qemu-devel] [PULL for-2.0-rc0 25/31] virtio-console: QOM cast cleanup for VirtConsole Andreas Färber
2014-03-13 15:32 ` [Qemu-devel] virtio-serial broken in qemu.git (was: Re: [PULL for-2.0-rc0 25/31] virtio-console: QOM cast cleanup for VirtConsole) Richard W.M. Jones
2014-03-13 15:43 ` Richard W.M. Jones
2014-03-12 21:09 ` [Qemu-devel] [PULL for-2.0-rc0 26/31] virtio-serial-port: Convert to QOM realize/unrealize Andreas Färber
2014-03-12 21:09 ` [Qemu-devel] [PULL for-2.0-rc0 27/31] tests: Add spapr-pci-host-bridge qtest Andreas Färber
2014-03-12 21:10 ` [Qemu-devel] [PULL for-2.0-rc0 28/31] qdev: Prepare realize/unrealize hooks for BusState Andreas Färber
2014-03-12 21:10 ` [Qemu-devel] [PULL for-2.0-rc0 29/31] qdev: Realize buses on device realization Andreas Färber
2014-03-12 21:10 ` [Qemu-devel] [PULL for-2.0-rc0 30/31] pci: Move VMState registration/unregistration to QOM realize/unrealize Andreas Färber
2014-03-12 21:10 ` [Qemu-devel] [PULL for-2.0-rc0 31/31] libqtest: Fix possible deadlock in qtest initialization Andreas Färber
2014-03-12 22:42 ` [Qemu-devel] [PULL for-2.0-rc0 00/31] QOM devices patch queue 2014-03-12 Peter Maydell
2014-03-13 0:19 ` Andreas Färber [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=5320F991.8030705@suse.de \
--to=afaerber@suse.de \
--cc=agraf@suse.de \
--cc=anthony@codemonkey.ws \
--cc=armbru@redhat.com \
--cc=bsd@redhat.com \
--cc=mst@redhat.com \
--cc=pbonzini@redhat.com \
--cc=peter.crosthwaite@xilinx.com \
--cc=peter.maydell@linaro.org \
--cc=qemu-devel@nongnu.org \
--cc=stefanha@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.