All of lore.kernel.org
 help / color / mirror / Atom feed
From: Markus Armbruster <armbru@redhat.com>
To: Thomas Huth <thuth@redhat.com>
Cc: "Michael S. Tsirkin" <mst@redhat.com>,
	"Juan Quintela" <quintela@redhat.com>,
	qemu-devel@nongnu.org, "Philippe Mathieu-Daudé" <f4bug@amsat.org>,
	"Paolo Bonzini" <pbonzini@redhat.com>,
	"Dr. David Alan Gilbert" <dgilbert@redhat.com>
Subject: Re: [Qemu-devel] [PATCH 2/6] tests/device-introspection: Check that the qom-tree and qtree do not change
Date: Wed, 15 Aug 2018 08:42:47 +0200	[thread overview]
Message-ID: <87zhxonna0.fsf@dusky.pond.sub.org> (raw)
In-Reply-To: <50453f7e-ef0e-bff4-e229-728b51017c62@redhat.com> (Thomas Huth's message of "Wed, 15 Aug 2018 07:56:59 +0200")

Thomas Huth <thuth@redhat.com> writes:

> On 08/14/2018 07:53 PM, Markus Armbruster wrote:
>> Thomas Huth <thuth@redhat.com> writes:
>> 
>>> Introspection should not change the qom-tree / qtree, so we should check
>>> this in the device-introspect-test, too. This patch helped to find lots
>>> of instrospection bugs during the QEMU v3.0 soft/hard-freeze period in the
>>> last two months.
>> 
>> Clever idea.
>> 
>>> Signed-off-by: Thomas Huth <thuth@redhat.com>
>>> ---
>>>  tests/device-introspect-test.c | 23 +++++++++++++++++++----
>>>  1 file changed, 19 insertions(+), 4 deletions(-)
>>>
>>> diff --git a/tests/device-introspect-test.c b/tests/device-introspect-test.c
>>> index 0b4f221..5b7ec05 100644
>>> --- a/tests/device-introspect-test.c
>>> +++ b/tests/device-introspect-test.c
>>> @@ -103,7 +103,14 @@ static QList *device_type_list(bool abstract)
>>>  static void test_one_device(const char *type)
>>>  {
>>>      QDict *resp;
>>> -    char *help, *qom_tree;
>>> +    char *help;
>>> +    char *qom_tree_start, *qom_tree_end;
>>> +    char *qtree_start, *qtree_end;
>>> +
>>> +    g_debug("Testing device '%s'", type);
>> 
>> This is only the second use of g_debug() in tests/.  What are you trying
>> to accomplish?
>
> When the test crashes, I need a way to determine the device which caused
> the crash. To avoid that I've then got to insert fprintf statements
> manually here and recompile, the g_debug() seems to be a good solution,
> since you can enable its output by setting some environment variable (I
> use G_MESSAGES_DEBUG=all and G_MESSAGES_PREFIXED=none).

I see.  However, I'm unlikely to remember these GLib arcana when I run
into test failures.

> Or do you see a better way to provide a possibility to determine the
> device that caused a crash?

g_test_message() and --verbose.

Less arcane, because device-introspect-test --help points to --verbose,
and --verbose does the natural thing, namely printing more about what
it's being done.

Another option would be to split test_device_intro_concrete() into one
test case per device.  main() would have to enumerate devices so it can
register the test cases.  Vaguely similar to how qmp-test enumerates
query commands and registers their tests.  Probably not worth the bother
now.

  reply	other threads:[~2018-08-15  6:42 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-08-14 14:46 [Qemu-devel] [PATCH 0/6] Various qtest-related patches and a mc146818rtc fix Thomas Huth
2018-08-14 14:46 ` [Qemu-devel] [PATCH 1/6] tests/migration-test: Silence the kvm_hv message by default Thomas Huth
2018-08-14 17:37   ` Markus Armbruster
2018-08-14 14:46 ` [Qemu-devel] [PATCH 2/6] tests/device-introspection: Check that the qom-tree and qtree do not change Thomas Huth
2018-08-14 17:53   ` Markus Armbruster
2018-08-15  5:56     ` Thomas Huth
2018-08-15  6:42       ` Markus Armbruster [this message]
2018-08-15  6:00     ` Thomas Huth
2018-08-15  6:24       ` Markus Armbruster
2018-08-14 14:46 ` [Qemu-devel] [PATCH 3/6] hw/timer/mc146818rtc: White space clean-up Thomas Huth
2018-08-14 17:55   ` Markus Armbruster
2018-08-14 14:46 ` [Qemu-devel] [PATCH 4/6] hw/timer/mc146818rtc: Fix introspection problem Thomas Huth
2018-08-14 18:09   ` Markus Armbruster
2018-08-14 14:46 ` [Qemu-devel] [PATCH 5/6] net: Silence 'has no peer' messages in testing mode Thomas Huth
2018-08-14 15:33   ` Paolo Bonzini
2018-08-14 15:43     ` Thomas Huth
2018-08-14 15:57       ` Paolo Bonzini
2018-08-14 16:01         ` Thomas Huth
2018-08-14 16:03           ` Paolo Bonzini
2018-08-14 16:11             ` Thomas Huth
2018-08-14 17:10               ` Paolo Bonzini
2018-08-15  6:06                 ` Thomas Huth
2018-08-16  8:59                 ` Thomas Huth
2018-08-14 14:46 ` [Qemu-devel] [PATCH 6/6] tests/device-introspect: Test with all machines, not only with "none" Thomas Huth
2018-08-14 15:32   ` Paolo Bonzini
2018-08-16 11:23     ` Thomas Huth
2018-08-15 12:25   ` Markus Armbruster

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=87zhxonna0.fsf@dusky.pond.sub.org \
    --to=armbru@redhat.com \
    --cc=dgilbert@redhat.com \
    --cc=f4bug@amsat.org \
    --cc=mst@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=quintela@redhat.com \
    --cc=thuth@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.