[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 14/15] hw/block/virtio-blk: create num_queues vq
From: |
Paolo Bonzini |
Subject: |
Re: [Qemu-devel] [PATCH 14/15] hw/block/virtio-blk: create num_queues vqs if dataplane is enabled |
Date: |
Thu, 31 Jul 2014 10:52:15 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.6.0 |
Il 31/07/2014 05:47, Ming Lei ha scritto:
> On Wed, Jul 30, 2014 at 11:25 PM, Paolo Bonzini <address@hidden> wrote:
>> Il 30/07/2014 17:12, Michael S. Tsirkin ha scritto:
>>>>>
>>>>> Dataplane must not be a change to the guest ABI. If you implement this
>>>>> feature you have to implement it for both dataplane and non-dataplne.
>>>>>
>
> IMO, no matter if the feature is set or not, both old and new VM
> can support it well.
>
> Per virtio spec, only the feature is set, the VM can be allowed to
> access the 'num_queues' field, and I didn't see any problem from
> VM's view point.
>
> So could you explain why both dataplane and non-dataplane have
> to support the feature.
Because otherwise you change the guest ABI.
> I am doing so because there isn't performance advantage to take mq
> for non-dataplane.
It doesn't matter, changing features between dataplane and non-dataplane
is not something that you can do.
>>> Actually, I think different backends at runtime should be allowed to
>>> change guest visible ABI. For example if you give qemu a read only
>>> backend this is guest visible right?
>>
>> Dataplane is not meant to be a different backend, it's just moving stuff
>> out to a separate thread. It's only due to QEMU limitation that it
>> doesn't share the vring code (and these patches include a lot of steps
>> backwards where dataplane becomes != non-dataplane).
>
> There won't lots of backwards steps, just the bypass co patch, which
> is just bypassing co in case of being unnecessary for raw image case,
> but it is still one code path.
Using the object pool for dataplane only is a backwards step,
implementing multique for dataplane only is a backwards step, bypassing
coroutines for dataplane only is a backwards step.
Paolo
- Re: [Qemu-devel] [PATCH 10/15] linux-aio: increase max event to 256, (continued)
- [Qemu-devel] [PATCH 11/15] linux-aio: remove 'node' from 'struct qemu_laiocb', Ming Lei, 2014/07/30
- [Qemu-devel] [PATCH 12/15] hw/virtio-pci: introduce num_queues property, Ming Lei, 2014/07/30
- [Qemu-devel] [PATCH 13/15] hw/virtio/virtio-blk.h: introduce VIRTIO_BLK_F_MQ, Ming Lei, 2014/07/30
- [Qemu-devel] [PATCH 14/15] hw/block/virtio-blk: create num_queues vqs if dataplane is enabled, Ming Lei, 2014/07/30
- Re: [Qemu-devel] [PATCH 14/15] hw/block/virtio-blk: create num_queues vqs if dataplane is enabled, Paolo Bonzini, 2014/07/30
- Re: [Qemu-devel] [PATCH 14/15] hw/block/virtio-blk: create num_queues vqs if dataplane is enabled, Michael S. Tsirkin, 2014/07/30
- Re: [Qemu-devel] [PATCH 14/15] hw/block/virtio-blk: create num_queues vqs if dataplane is enabled, Paolo Bonzini, 2014/07/30
- Re: [Qemu-devel] [PATCH 14/15] hw/block/virtio-blk: create num_queues vqs if dataplane is enabled, Ming Lei, 2014/07/30
- Re: [Qemu-devel] [PATCH 14/15] hw/block/virtio-blk: create num_queues vqs if dataplane is enabled,
Paolo Bonzini <=
- Re: [Qemu-devel] [PATCH 14/15] hw/block/virtio-blk: create num_queues vqs if dataplane is enabled, Ming Lei, 2014/07/31
- Re: [Qemu-devel] [PATCH 14/15] hw/block/virtio-blk: create num_queues vqs if dataplane is enabled, Ming Lei, 2014/07/31
[Qemu-devel] [PATCH 15/15] dataplane: virtio-blk: support mutlti virtqueue, Ming Lei, 2014/07/30
Re: [Qemu-devel] [PATCH 00/14] dataplane: optimization and multi virtqueue support, Christian Borntraeger, 2014/07/30