aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaolo Bonzini <pbonzini@redhat.com>2018-12-03 16:32:20 +0100
committerPaolo Bonzini <pbonzini@redhat.com>2019-02-05 16:48:40 +0100
commitacca950ccded44277037ac765cf6d5003a3d43eb (patch)
treed538246028b1679ea17f3dde04e24eec0557959f
parent04ad1bf68e22dd5de8249ffd4c4e5886d50f3f95 (diff)
downloadqemu-acca950ccded44277037ac765cf6d5003a3d43eb.zip
qemu-acca950ccded44277037ac765cf6d5003a3d43eb.tar.gz
qemu-acca950ccded44277037ac765cf6d5003a3d43eb.tar.bz2
vhost-user-test: signal data_cond when s->rings changes
This speeds up wait_for_rings_started, which currently is just waiting for the timeout before checking s->rings. Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Message-Id: <1543851204-41186-8-git-send-email-pbonzini@redhat.com>
-rw-r--r--tests/vhost-user-test.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/tests/vhost-user-test.c b/tests/vhost-user-test.c
index 9baaff4..8eb7943 100644
--- a/tests/vhost-user-test.c
+++ b/tests/vhost-user-test.c
@@ -384,6 +384,7 @@ static void chr_read(void *opaque, const uint8_t *buf, int size)
assert(msg.payload.state.index < s->queues * 2);
s->rings &= ~(0x1ULL << msg.payload.state.index);
+ g_cond_broadcast(&s->data_cond);
break;
case VHOST_USER_SET_MEM_TABLE:
@@ -425,6 +426,7 @@ static void chr_read(void *opaque, const uint8_t *buf, int size)
case VHOST_USER_SET_VRING_BASE:
assert(msg.payload.state.index < s->queues * 2);
s->rings |= 0x1ULL << msg.payload.state.index;
+ g_cond_broadcast(&s->data_cond);
break;
case VHOST_USER_GET_QUEUE_NUM: