[Qemu-devel] [PATCH FOR 2.1 1/5] tests/test-qmp-event: fix for GLib < 2.31

2014-06-24 Thread Wenchao Xia
From: Paolo Bonzini 

On old GLib, the test needs a g_thread_init call.

Reported-by: Wenchao Xia 
Signed-off-by: Paolo Bonzini 
Tested-by: Wenchao Xia 
Signed-off-by: Wenchao Xia 
---
 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);
-- 
1.7.1




Re: [Qemu-devel] [PATCH FOR 2.1 1/5] tests/test-qmp-event: fix for GLib < 2.31

2014-06-25 Thread Luiz Capitulino
On Tue, 24 Jun 2014 16:33:56 -0700
Wenchao Xia  wrote:

> From: Paolo Bonzini 
> 
> On old GLib, the test needs a g_thread_init call.
> 
> Reported-by: Wenchao Xia 
> Signed-off-by: Paolo Bonzini 
> Tested-by: Wenchao Xia 
> Signed-off-by: Wenchao Xia 
> ---
>  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.



Re: [Qemu-devel] [PATCH FOR 2.1 1/5] tests/test-qmp-event: fix for GLib < 2.31

2014-06-25 Thread Paolo Bonzini

Il 25/06/2014 15:13, Luiz Capitulino ha scritto:

On Tue, 24 Jun 2014 16:33:56 -0700
Wenchao Xia  wrote:


From: Paolo Bonzini 

On old GLib, the test needs a g_thread_init call.

Reported-by: Wenchao Xia 
Signed-off-by: Paolo Bonzini 
Tested-by: Wenchao Xia 
Signed-off-by: Wenchao Xia 
---
 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



Re: [Qemu-devel] [PATCH FOR 2.1 1/5] tests/test-qmp-event: fix for GLib < 2.31

2014-06-27 Thread Luiz Capitulino
On Wed, 25 Jun 2014 15:15:35 +0200
Paolo Bonzini  wrote:

> Il 25/06/2014 15:13, Luiz Capitulino ha scritto:
> > On Tue, 24 Jun 2014 16:33:56 -0700
> > Wenchao Xia  wrote:
> >
> >> From: Paolo Bonzini 
> >>
> >> On old GLib, the test needs a g_thread_init call.
> >>
> >> Reported-by: Wenchao Xia 
> >> Signed-off-by: Paolo Bonzini 
> >> Tested-by: Wenchao Xia 
> >> Signed-off-by: Wenchao Xia 
> >> ---
> >>  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?



Re: [Qemu-devel] [PATCH FOR 2.1 1/5] tests/test-qmp-event: fix for GLib < 2.31

2014-06-29 Thread Peter Maydell
On 27 June 2014 19:28, Luiz Capitulino  wrote:
> On Wed, 25 Jun 2014 15:15:35 +0200
> Paolo Bonzini  wrote:
>
>> Il 25/06/2014 15:13, Luiz Capitulino ha scritto:
>> > On Tue, 24 Jun 2014 16:33:56 -0700
>> > Wenchao Xia  wrote:
>> >
>> >> From: Paolo Bonzini 
>> >>
>> >> On old GLib, the test needs a g_thread_init call.
>> >>
>> >> Reported-by: Wenchao Xia 
>> >> Signed-off-by: Paolo Bonzini 
>> >> Tested-by: Wenchao Xia 
>> >> Signed-off-by: Wenchao Xia 
>> >> ---
>> >>  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.

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



Re: [Qemu-devel] [PATCH FOR 2.1 1/5] tests/test-qmp-event: fix for GLib < 2.31

2014-06-30 Thread Paolo Bonzini

Il 29/06/2014 22:31, Peter Maydell ha scritto:

On 27 June 2014 19:28, Luiz Capitulino  wrote:

On Wed, 25 Jun 2014 15:15:35 +0200
Paolo Bonzini  wrote:


Il 25/06/2014 15:13, Luiz Capitulino ha scritto:

On Tue, 24 Jun 2014 16:33:56 -0700
Wenchao Xia  wrote:


From: Paolo Bonzini 

On old GLib, the test needs a g_thread_init call.

Reported-by: Wenchao Xia 
Signed-off-by: Paolo Bonzini 
Tested-by: Wenchao Xia 
Signed-off-by: Wenchao Xia 
---
 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


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







Re: [Qemu-devel] [PATCH FOR 2.1 1/5] tests/test-qmp-event: fix for GLib < 2.31

2014-07-01 Thread Wenchao Xia

于 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  wrote:

On Wed, 25 Jun 2014 15:15:35 +0200
Paolo Bonzini  wrote:


Il 25/06/2014 15:13, Luiz Capitulino ha scritto:

On Tue, 24 Jun 2014 16:33:56 -0700
Wenchao Xia  wrote:


From: Paolo Bonzini 

On old GLib, the test needs a g_thread_init call.

Reported-by: Wenchao Xia 
Signed-off-by: Paolo Bonzini 
Tested-by: Wenchao Xia 
Signed-off-by: Wenchao Xia 
---
 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