From 4448a446a74c85f4c425c5055d48bc66f23dd63f Mon Sep 17 00:00:00 2001
From: "Michael S. Tsirkin" <mst@redhat.com>
Date: Mon, 16 Nov 2015 14:32:53 +0100
Subject: [PATCH 28/44] vhost-user-test: move wait_for_fds() out
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Message-id: <1447684235-15638-22-git-send-email-mst@redhat.com>
Patchwork-id: 68381
O-Subject: [PATCH RHEV 7.3/7.2.z v2 21/36] vhost-user-test: move wait_for_fds() out
Bugzilla: 1279388
RH-Acked-by: Xiao Wang <jasowang@redhat.com>
RH-Acked-by: Victor Kaplansky <vkaplans@redhat.com>
RH-Acked-by: Marcel Apfelbaum <marcel@redhat.com>
RH-Acked-by: Marc-André Lureau <mlureau@redhat.com>

From: Marc-André Lureau <marcandre.lureau@redhat.com>

This function is a precondition for most vhost-user tests.

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Tested-by: Thibaut Collet <thibaut.collet@6wind.com>
(cherry picked from commit cf72b57f894dd47c32750cf51de1d195a19c5e48)
Signed-off-by: Miroslav Rezanina <mrezanin@redhat.com>
---
 tests/vhost-user-test.c | 18 ++++++++++++++----
 1 file changed, 14 insertions(+), 4 deletions(-)

diff --git a/tests/vhost-user-test.c b/tests/vhost-user-test.c
index 75fedf0..d889a50 100644
--- a/tests/vhost-user-test.c
+++ b/tests/vhost-user-test.c
@@ -201,12 +201,9 @@ static GThread *_thread_new(const gchar *name, GThreadFunc func, gpointer data)
     return thread;
 }
 
-static void read_guest_mem(void)
+static void wait_for_fds(void)
 {
-    uint32_t *guest_mem;
     gint64 end_time;
-    int i, j;
-    size_t size;
 
     g_mutex_lock(data_mutex);
 
@@ -223,6 +220,19 @@ static void read_guest_mem(void)
     g_assert_cmpint(fds_num, >, 0);
     g_assert_cmpint(fds_num, ==, memory.nregions);
 
+    g_mutex_unlock(&data_mutex);
+}
+
+static void read_guest_mem(void)
+{
+    uint32_t *guest_mem;
+    int i, j;
+    size_t size;
+
+    wait_for_fds();
+
+    g_mutex_lock(&data_mutex);
+
     /* iterate all regions */
     for (i = 0; i < fds_num; i++) {
 
-- 
1.8.3.1

