virtio: add set_status callback

vhost net backend needs to be notified when
frontend status changes. Add a callback,
similar to set_features.

Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
This commit is contained in:
Michael S. Tsirkin 2010-03-17 13:08:05 +02:00 committed by Anthony Liguori
parent 1cbdabe203
commit 3e607cb503
4 changed files with 14 additions and 4 deletions

View file

@ -115,12 +115,21 @@ struct VirtIODevice
void (*get_config)(VirtIODevice *vdev, uint8_t *config);
void (*set_config)(VirtIODevice *vdev, const uint8_t *config);
void (*reset)(VirtIODevice *vdev);
void (*set_status)(VirtIODevice *vdev, uint8_t val);
VirtQueue *vq;
const VirtIOBindings *binding;
void *binding_opaque;
uint16_t device_id;
};
static inline void virtio_set_status(VirtIODevice *vdev, uint8_t val)
{
if (vdev->set_status) {
vdev->set_status(vdev, val);
}
vdev->status = val;
}
VirtQueue *virtio_add_queue(VirtIODevice *vdev, int queue_size,
void (*handle_output)(VirtIODevice *,
VirtQueue *));