Revision 9154b02c hw/virtio/dataplane/vring.c
b/hw/virtio/dataplane/vring.c | ||
---|---|---|
39 | 39 |
|
40 | 40 |
vring_init(&vring->vr, virtio_queue_get_num(vdev, n), vring_ptr, 4096); |
41 | 41 |
|
42 |
vring->last_avail_idx = 0;
|
|
43 |
vring->last_used_idx = 0;
|
|
42 |
vring->last_avail_idx = virtio_queue_get_last_avail_idx(vdev, n);
|
|
43 |
vring->last_used_idx = vring->vr.used->idx;
|
|
44 | 44 |
vring->signalled_used = 0; |
45 | 45 |
vring->signalled_used_valid = false; |
46 | 46 |
|
... | ... | |
49 | 49 |
return true; |
50 | 50 |
} |
51 | 51 |
|
52 |
void vring_teardown(Vring *vring) |
|
52 |
void vring_teardown(Vring *vring, VirtIODevice *vdev, int n)
|
|
53 | 53 |
{ |
54 |
virtio_queue_set_last_avail_idx(vdev, n, vring->last_avail_idx); |
|
55 |
|
|
54 | 56 |
hostmem_finalize(&vring->hostmem); |
55 | 57 |
} |
56 | 58 |
|
Also available in: Unified diff