• N
    tcm_vhost: Initial merge for vhost level target fabric driver · 057cbf49
    Nicholas Bellinger 提交于
    This patch adds the initial code for tcm_vhost, a Vhost level TCM
    fabric driver for virtio SCSI initiators into KVM guest.
    
    This code is currently up and running on v3.5-rc2 host+guest
    from target-pending/for-next-merge.
    
    Using tcm_vhost requires Zhi's -> Stefan -> nab's qemu vhost-scsi tree here:
    
      http://git.kernel.org/?p=virt/kvm/nab/qemu-kvm.git;a=shortlog;h=refs/heads/vhost-scsi
    
    --
    
    Changelog v4 -> v5:
    
      Expose ABI version via VHOST_SCSI_GET_ABI_VERSION + use Rev 0 as
      starting point for v3.6-rc code (Stefan + ALiguori + nab)
      Convert vhost_scsi_handle_vq() to vq_err() (nab + MST)
      Minor style fixes from checkpatch (nab)
    
    Changelog v3 -> v4:
    
      Rename vhost_vring_target -> vhost_scsi_target (mst + nab)
      Use TRANSPORT_IQN_LEN in vhost_scsi_target->vhost_wwpn[] def (nab)
      Move back to drivers/vhost/, and just use drivers/vhost/Kconfig.tcm (mst)
      Move TCM_VHOST related ioctl defines from include/linux/vhost.h ->
      drivers/vhost/tcm_vhost.h as requested by MST (nab)
      Move Kbuild.tcm include from drivers/staging -> drivers/vhost/, and
      just use 'if STAGING' around 'source drivers/vhost/Kbuild.tcm'
    
    Changelog v2 -> v3:
    
      Unlock on error in tcm_vhost_drop_nexus() (DanC)
      Fix strlen() doesn't count the terminator (DanC)
      Call kfree() on an error path (DanC)
      Convert tcm_vhost_write_pending to use target_execute_cmd (hch + nab)
      Fix another strlen() off by one in tcm_vhost_make_tport (DanC)
      Add option under drivers/staging/Kconfig, and move to drivers/vhost/tcm/
      as requested by MST (nab)
    
    Changelog v1 -> v2:
    
      Fix tv_cmd completion -> release SGL memory leak (nab)
      Fix sparse warnings for static variable usage ((Fengguang Wu)
      Fix sparse warnings for min() typing + printk format specs (Fengguang Wu)
      Convert to cmwq submission for I/O dispatch (nab + hch)
    
    Changelog v0 -> v1:
    
      Merge into single source + header file, and move to drivers/vhost/
    Acked-by: NMichael S. Tsirkin <mst@redhat.com>
    Cc: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>
    Cc: Anthony Liguori <aliguori@us.ibm.com>
    Cc: Zhi Yong Wu <wuzhy@cn.ibm.com>
    Cc: Paolo Bonzini <pbonzini@redhat.com>
    Cc: Christoph Hellwig <hch@lst.de>
    Cc: Hannes Reinecke <hare@suse.de>
    Cc: Jens Axboe <axboe@kernel.dk>
    Signed-off-by: NNicholas Bellinger <nab@linux-iscsi.org>
    057cbf49
tcm_vhost.c 42.4 KB