Re: [PATCH 4/5] virtio-scsi: Add start/stop functionality for vhost-scsi

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 09/10/2012 01:24 AM, Michael S. Tsirkin wrote:
On Mon, Sep 10, 2012 at 08:16:54AM +0200, Paolo Bonzini wrote:
Il 09/09/2012 00:40, Michael S. Tsirkin ha scritto:
On Fri, Sep 07, 2012 at 06:00:50PM +0200, Paolo Bonzini wrote:
Il 07/09/2012 08:48, Nicholas A. Bellinger ha scritto:
Cc: Stefan Hajnoczi<stefanha@xxxxxxxxxxxxxxxxxx>
Cc: Zhi Yong Wu<wuzhy@xxxxxxxxxxxxxxxxxx>
Cc: Michael S. Tsirkin<mst@xxxxxxxxxx>
Cc: Paolo Bonzini<pbonzini@xxxxxxxxxx>
Signed-off-by: Nicholas Bellinger<nab@xxxxxxxxxxxxxxx>
---
  hw/virtio-pci.c  |    2 ++
  hw/virtio-scsi.c |   49 +++++++++++++++++++++++++++++++++++++++++++++++++
  hw/virtio-scsi.h |    1 +
  3 files changed, 52 insertions(+), 0 deletions(-)

Please create a completely separate device vhost-scsi-pci instead (or
virtio-scsi-tcm-pci, or something like that).  It is used completely
differently from virtio-scsi-pci, it does not make sense to conflate the
two.

Ideally the name would say how it is different, not what backend it
uses. Any good suggestions?

I chose the backend name because, ideally, there would be no other
difference.  QEMU _could_ implement all the goodies in vhost-scsi (such
as reservations or ALUA), it just doesn't do that yet.

Paolo

Then why do you say "It is used completely differently from
virtio-scsi-pci"?  Isn't it just a different backend?

If yes then it should be a backend option, like it is
for virtio-net.

I don't mean to bike shed here so don't take this as a nack on making it a backend option, but in retrospect, the way we did vhost-net was a mistake even though I strongly advocated for it to be a backend option.

The code to do it is really, really ugly. I think it would have made a lot more sense to just make it a device and then have it not use a netdev backend or any other kind of backend split.

For instance:

qemu -device vhost-net-pci,tapfd=X

I know this breaks the model of separate backends and frontends but since vhost-net absolutely requires a tap fd, I think it's better in the long run to not abuse the netdev backend to prevent user confusion. Having a dedicated backend type that only has one possible option and can only be used by one device is a bit silly too.

So I would be in favor of dropping/squashing 3/5 and radically simplifying how this was exposed to the user.

I would just take qemu_vhost_scsi_opts and make them device properties.

Regards,

Anthony Liguori



--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux