Hi On Tue, Jun 28, 2016 at 7:22 PM, Paolo Bonzini <[email protected]> wrote: > This fixes compilation with glib versions up to 2.30, such > as the one in CentOS 6. >
What's RFH in title? :) (not sure this applies here: http://www.urbandictionary.com/define.php?term=rfh) > Even with this patch the test fails though: > > ERROR:/tmp/qemu-test/src/tests/vhost-user-test.c:165:wait_for_fds: assertion > failed: (s->fds_num) > That's a regression from Cornelia's series "virtio-bus: have callers tolerate new host notifier api". > Signed-off-by: Paolo Bonzini <[email protected]> > --- > tests/vhost-user-test.c | 11 +++++++---- > 1 file changed, 7 insertions(+), 4 deletions(-) > > diff --git a/tests/vhost-user-test.c b/tests/vhost-user-test.c > index 8b2164b..4de64df 100644 > --- a/tests/vhost-user-test.c > +++ b/tests/vhost-user-test.c > @@ -127,21 +127,24 @@ typedef struct TestServer { > int fds_num; > int fds[VHOST_MEMORY_MAX_NREGIONS]; > VhostUserMemory memory; > - GMutex data_mutex; > - GCond data_cond; > + CompatGMutex data_mutex; > + CompatGCond data_cond; > int log_fd; > uint64_t rings; > } TestServer; > > #if !GLIB_CHECK_VERSION(2, 32, 0) > -static gboolean g_cond_wait_until(CompatGCond cond, CompatGMutex mutex, > +static gboolean g_cond_wait_until(CompatGCond *cond, CompatGMutex *mutex, > gint64 end_time) > { > gboolean ret = FALSE; > end_time -= g_get_monotonic_time(); > GTimeVal time = { end_time / G_TIME_SPAN_SECOND, > end_time % G_TIME_SPAN_SECOND }; > - ret = g_cond_timed_wait(cond, mutex, &time); > + g_assert(mutex->once.status != G_ONCE_STATUS_PROGRESS); > + g_once(&cond->once, do_g_cond_new, NULL); > + ret = g_cond_timed_wait((GCond *) cond->once.retval, > + (GMutex *) mutex->once.retval, &time); > return ret; > } > #endif > -- > 2.7.4 > > Reviewed-by: Marc-André Lureau <[email protected]> -- Marc-André Lureau
