[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 07/12] virtio: introduce virtio_queue_del()
From: |
Jason Wang |
Subject: |
Re: [Qemu-devel] [PATCH 07/12] virtio: introduce virtio_queue_del() |
Date: |
Tue, 08 Jan 2013 17:28:21 +0800 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/17.0 Thunderbird/17.0 |
On 01/08/2013 03:14 PM, Michael S. Tsirkin wrote:
> On Fri, Dec 28, 2012 at 06:31:59PM +0800, Jason Wang wrote:
>> Some device (such as virtio-net) needs the ability to destroy or re-order the
>> virtqueues, this patch adds a helper to do this.
>>
>> Signed-off-by: Jason Wang <jasowang>
> Actually del_queue unlike what the subject says :)
Oh, yes, will correct this.
>
>> ---
>> hw/virtio.c | 9 +++++++++
>> hw/virtio.h | 2 ++
>> 2 files changed, 11 insertions(+), 0 deletions(-)
>>
>> diff --git a/hw/virtio.c b/hw/virtio.c
>> index f40a8c5..bc3c9c3 100644
>> --- a/hw/virtio.c
>> +++ b/hw/virtio.c
>> @@ -700,6 +700,15 @@ VirtQueue *virtio_add_queue(VirtIODevice *vdev, int
>> queue_size,
>> return &vdev->vq[i];
>> }
>>
>> +void virtio_del_queue(VirtIODevice *vdev, int n)
>> +{
>> + if (n < 0 || n >= VIRTIO_PCI_QUEUE_MAX) {
>> + abort();
>> + }
>> +
>> + vdev->vq[n].vring.num = 0;
>> +}
>> +
>> void virtio_irq(VirtQueue *vq)
>> {
>> trace_virtio_irq(vq);
>> diff --git a/hw/virtio.h b/hw/virtio.h
>> index 7c17f7b..f6cb0f9 100644
>> --- a/hw/virtio.h
>> +++ b/hw/virtio.h
>> @@ -138,6 +138,8 @@ VirtQueue *virtio_add_queue(VirtIODevice *vdev, int
>> queue_size,
>> void (*handle_output)(VirtIODevice *,
>> VirtQueue *));
>>
>> +void virtio_del_queue(VirtIODevice *vdev, int n);
>> +
>> void virtqueue_push(VirtQueue *vq, const VirtQueueElement *elem,
>> unsigned int len);
>> void virtqueue_flush(VirtQueue *vq, unsigned int count);
>> --
>> 1.7.1