qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Wenchao Xia <wenchaoqemu@gmail.com>
To: Paolo Bonzini <pbonzini@redhat.com>,
	Peter Maydell <peter.maydell@linaro.org>,
	Luiz Capitulino <lcapitulino@redhat.com>
Cc: QEMU Developers <qemu-devel@nongnu.org>,
	Markus Armbruster <armbru@redhat.com>
Subject: Re: [Qemu-devel] [PATCH FOR 2.1 1/5] tests/test-qmp-event: fix for GLib < 2.31
Date: Tue, 01 Jul 2014 22:32:44 +0800	[thread overview]
Message-ID: <53B2C68C.7030401@gmail.com> (raw)
In-Reply-To: <53B14191.9070403@redhat.com>

于 2014/6/30 18:53, Paolo Bonzini 写道:
> Il 29/06/2014 22:31, Peter Maydell ha scritto:
>> On 27 June 2014 19:28, Luiz Capitulino <lcapitulino@redhat.com> wrote:
>>> On Wed, 25 Jun 2014 15:15:35 +0200
>>> Paolo Bonzini <pbonzini@redhat.com> wrote:
>>>
>>>> Il 25/06/2014 15:13, Luiz Capitulino ha scritto:
>>>>> On Tue, 24 Jun 2014 16:33:56 -0700
>>>>> Wenchao Xia <wenchaoqemu@gmail.com> wrote:
>>>>>
>>>>>> From: Paolo Bonzini <pbonzini@redhat.com>
>>>>>>
>>>>>> On old GLib, the test needs a g_thread_init call.
>>>>>>
>>>>>> Reported-by: Wenchao Xia <wenchaoqemu@gmail.com>
>>>>>> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
>>>>>> Tested-by: Wenchao Xia <wenchaoqemu@gmail.com>
>>>>>> Signed-off-by: Wenchao Xia <wenchaoqemu@gmail.com>
>>>>>> ---
>>>>>>  tests/test-qmp-event.c |    1 +
>>>>>>  1 files changed, 1 insertions(+), 0 deletions(-)
>>>>>>
>>>>>> diff --git a/tests/test-qmp-event.c b/tests/test-qmp-event.c
>>>>>> index cb1e441..17c6444 100644
>>>>>> --- a/tests/test-qmp-event.c
>>>>>> +++ b/tests/test-qmp-event.c
>>>>>> @@ -251,6 +251,7 @@ static void test_event_d(TestEventData *data,
>>>>>>
>>>>>>  int main(int argc, char **argv)
>>>>>>  {
>>>>>> +    g_thread_init(NULL);
>>>>>>      qmp_event_set_func_emit(event_test_emit);
>>>>>>
>>>>>>      g_test_init(&argc, &argv, NULL);
>>>>>
>>>>> This breaks make check on F20:
>>>>>
>>>>> """
>>>>> /home/lcapitulino/work/src/upstream/qmp-unstable/tests/test-qmp-event.c:
>>>>> In function ‘main’:
>>>>> /home/lcapitulino/work/src/upstream/qmp-unstable/tests/test-qmp-event.c:254:5:
>>>>> error: ‘g_thread_init’ is deprecated (declared at
>>>>> /usr/include/glib-2.0/glib/deprecated/gthread.h:260)
>>>>> [-Werror=deprecated-declarations]
>>>>>      g_thread_init(NULL);
>>>>>      ^
>>>>> cc1: all warnings being treated as errors
>>>>> make: *** [tests/test-qmp-event.o] Error 1
>>>>> """
>>>>>
>>>>> I think the best way to fix this is to make util/osdep.c:thread_init()
>>>>> public (maybe by moving it to include/glib-compat.h) and use that
>>>>> instead.
>>>>> Also, note that thread_init()'s body is duplicated in a few other
>>>>> places,
>>>>> so maybe those places should call it too.
>>>>>
>>>>> You may want to do this in a different series, then I can skip this
>>>>> patch
>>>>> and apply the rest of the series.
>>>>>
>>>>
>>>> Thanks Luiz, it's a good suggestion.
>>>
>>> Paolo, Wenchao, are one of one going to work on this?
>>
>> Ping! Can we have at least a local fix using glib version #ifdefs before
>> Tuesday please? Otherwise we need to do something like this
>> to avoid shipping an rc0 which doesn't pass make check on some
>> systems.
>
> I'll send the patch today.  thread_init() is a bit tricky because it is
> a __constructor__ but it is not included in the binary because no other
> function is included from the same file.
>
> BTW, the make check limitation is currently mentioned in the changelog.
>
> Paolo
>
   I am not free these days for the issue, thanks for fixing it instead
of me!


>> diff --git a/tests/Makefile b/tests/Makefile
>> index 7e53d0d..a1a0dae 100644
>> --- a/tests/Makefile
>> +++ b/tests/Makefile
>> @@ -27,8 +27,6 @@ check-unit-y +=
>> tests/test-string-input-visitor$(EXESUF)
>>  gcov-files-test-string-input-visitor-y = qapi/string-input-visitor.c
>>  check-unit-y += tests/test-string-output-visitor$(EXESUF)
>>  gcov-files-test-string-output-visitor-y = qapi/string-output-visitor.c
>> -check-unit-y += tests/test-qmp-event$(EXESUF)
>> -gcov-files-test-qmp-event-y += qapi/qmp-event.c
>>  check-unit-y += tests/test-opts-visitor$(EXESUF)
>>  gcov-files-test-opts-visitor-y = qapi/opts-visitor.c
>>  check-unit-y += tests/test-coroutine$(EXESUF)
>> @@ -213,7 +211,7 @@ test-obj-y = tests/check-qint.o
>> tests/check-qstring.o tests/check-qdict.o \
>>         tests/test-qmp-input-visitor.o tests/test-qmp-input-strict.o \
>>         tests/test-qmp-commands.o tests/test-visitor-serialization.o \
>>         tests/test-x86-cpuid.o tests/test-mul64.o tests/test-int128.o \
>> -       tests/test-opts-visitor.o tests/test-qmp-event.o
>> +       tests/test-opts-visitor.o
>>
>>  test-qapi-obj-y = tests/test-qapi-visit.o tests/test-qapi-types.o \
>>                    tests/test-qapi-event.o
>>
>> thanks
>> -- PMM
>>
>>
>

  reply	other threads:[~2014-07-01 14:33 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-06-24 23:33 [Qemu-devel] [PATCH FOR 2.1 0/5] clean up for qapi event Wenchao Xia
2014-06-24 23:33 ` [Qemu-devel] [PATCH FOR 2.1 1/5] tests/test-qmp-event: fix for GLib < 2.31 Wenchao Xia
2014-06-25 13:13   ` Luiz Capitulino
2014-06-25 13:15     ` Paolo Bonzini
2014-06-27 18:28       ` Luiz Capitulino
2014-06-29 20:31         ` Peter Maydell
2014-06-30 10:53           ` Paolo Bonzini
2014-07-01 14:32             ` Wenchao Xia [this message]
2014-06-24 23:33 ` [Qemu-devel] [PATCH FOR 2.1 2/5] qapi: move event defines Wenchao Xia
2014-06-25  2:15   ` Eric Blake
2014-06-24 23:33 ` [Qemu-devel] [PATCH FOR 2.1 3/5] qapi: ignore generated event files Wenchao Xia
2014-06-25  2:20   ` Eric Blake
2014-06-24 23:33 ` [Qemu-devel] [PATCH FOR 2.1 4/5] qapi script: clean up in scripts Wenchao Xia
2014-06-25  2:39   ` Eric Blake
2014-06-24 23:34 ` [Qemu-devel] [PATCH FOR 2.1 5/5] qapi event: clean up in callers Wenchao Xia
2014-06-25  2:48   ` Eric Blake
2014-06-25 15:36 ` [Qemu-devel] [PATCH FOR 2.1 0/5] clean up for qapi event Luiz Capitulino

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=53B2C68C.7030401@gmail.com \
    --to=wenchaoqemu@gmail.com \
    --cc=armbru@redhat.com \
    --cc=lcapitulino@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=peter.maydell@linaro.org \
    --cc=qemu-devel@nongnu.org \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).