Re: [PATCH V5 4/5] virtio-scsi: introduce multiqueue support

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

 



Il 20/03/2013 02:46, Venkatesh Srinivas ha scritto:
> This looks pretty good!
> 
> I rather like the (lack of) locking in I/O completion (around the req
> count vs. target/queue binding). It is unfortunate that you need to hold
> the per-target lock in virtscsi_pick_vq() though; have any idea
> how much that lock hurts?

It doesn't hurt, the lock is mostly uncontended.

- if you have lots of I/O, it's held for a very small period of time; if
you have little I/O, it's uncontended anyway.

- the SCSI layer will serialize on the host lock anyway before calling
into the LLD.  Locks are "pipelined" so that in the end the host lock
will be a bigger bottleneck than the others.

Most of the time it only costs 2 extra atomic operations, which should
be galf a microsecond or less.

Paolo

> Just two minor comments:
> 
> (in struct virtio_scsi_target_data):
> +       /* This spinlock never help at the same time as vq_lock. */
>                                ^^^^ held?
> 
> (in struct virtio_scsi):
> +       /* Does the affinity hint is set for virtqueues? */
> Could you rephrase that, please?
> 
> Tested on qemu and w/ Google Compute Engine's virtio-scsi device.
> 
> Reviewed-and-tested-by: Venkatesh Srinivas <venkateshs@xxxxxxxxxx>
> 
> Thanks,
> -- vs;

_______________________________________________
Virtualization mailing list
Virtualization@xxxxxxxxxxxxxxxxxxxxxxxxxx
https://lists.linuxfoundation.org/mailman/listinfo/virtualization


[Index of Archives]     [KVM Development]     [Libvirt Development]     [Libvirt Users]     [CentOS Virtualization]     [Netdev]     [Ethernet Bridging]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite Forum]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux