aboutsummaryrefslogtreecommitdiffstats
path: root/tools/virtio/virtio_test.c
diff options
context:
space:
mode:
Diffstat (limited to 'tools/virtio/virtio_test.c')
-rw-r--r--tools/virtio/virtio_test.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/tools/virtio/virtio_test.c b/tools/virtio/virtio_test.c
index da7a19558281..bdb71a26ae35 100644
--- a/tools/virtio/virtio_test.c
+++ b/tools/virtio/virtio_test.c
@@ -41,13 +41,14 @@ struct vdev_info {
41 struct vhost_memory *mem; 41 struct vhost_memory *mem;
42}; 42};
43 43
44void vq_notify(struct virtqueue *vq) 44bool vq_notify(struct virtqueue *vq)
45{ 45{
46 struct vq_info *info = vq->priv; 46 struct vq_info *info = vq->priv;
47 unsigned long long v = 1; 47 unsigned long long v = 1;
48 int r; 48 int r;
49 r = write(info->kick, &v, sizeof v); 49 r = write(info->kick, &v, sizeof v);
50 assert(r == sizeof v); 50 assert(r == sizeof v);
51 return true;
51} 52}
52 53
53void vq_callback(struct virtqueue *vq) 54void vq_callback(struct virtqueue *vq)
@@ -171,7 +172,8 @@ static void run_test(struct vdev_info *dev, struct vq_info *vq,
171 GFP_ATOMIC); 172 GFP_ATOMIC);
172 if (likely(r == 0)) { 173 if (likely(r == 0)) {
173 ++started; 174 ++started;
174 virtqueue_kick(vq->vq); 175 if (unlikely(!virtqueue_kick(vq->vq))
176 r = -1;
175 } 177 }
176 } else 178 } else
177 r = -1; 179 r = -1;