1. 07 7月, 2017 4 次提交
  2. 10 5月, 2016 2 次提交
  3. 11 3月, 2016 1 次提交
  4. 29 11月, 2015 1 次提交
    • S
      tcm_loop: Show address of tpg in configfs · 2628b352
      Sheng Yang 提交于
      In the past, the scsi_host's number wasn't shown anywhere, user have
      to depends on vpg_83 to find the block device, which is also depends
      on backstore implementation.
      
      It's better for tcm_loop to provide necessary straightforward
      information on locate the block device it created.
      
      This patch would help to locate the block device created by tcm_loop.
      The address would be shown at e.g.
      
        /sys/kernel/config/target/loopback/naa.60014059436855c1/tpgt_1/address
      
      which would looks like "2:0:1", and the lun number can be found at
      "/tpgt_1/lun/lun_0".  Altogether they formated the scsi address of
      device as "2:0:1:0", which can be used to locate the device easily
      through 'lsscsi'.
      
      (Update to >= v4.4-rc1 configfs attribute usage - nab)
      Signed-off-by: NSheng Yang <sheng@yasker.org>
      Signed-off-by: NNicholas Bellinger <nab@linux-iscsi.org>
      2628b352
  5. 10 11月, 2015 1 次提交
  6. 14 10月, 2015 1 次提交
  7. 24 7月, 2015 2 次提交
  8. 16 6月, 2015 2 次提交
  9. 31 5月, 2015 10 次提交
  10. 15 4月, 2015 1 次提交
    • C
      target: simplify the target template registration API · 9ac8928e
      Christoph Hellwig 提交于
      Instead of calling target_fabric_configfs_init() +
      target_fabric_configfs_register() / target_fabric_configfs_deregister()
      target_fabric_configfs_free() from every target driver, rewrite the API
      so that we have simple register/unregister functions that operate on
      a const operations vector.
      
      This patch also fixes a memory leak in several target drivers. Several
      target drivers namely called target_fabric_configfs_deregister()
      without calling target_fabric_configfs_free().
      
      A large part of this patch is based on earlier changes from
      Bart Van Assche <bart.vanassche@sandisk.com>.
      
      (v2: Add a new TF_CIT_SETUP_DRV macro so that the core configfs code
      can declare attributes as either core only or for drivers)
      Signed-off-by: NChristoph Hellwig <hch@lst.de>
      Signed-off-by: NNicholas Bellinger <nab@linux-iscsi.org>
      9ac8928e
  11. 08 4月, 2015 2 次提交
  12. 27 3月, 2015 1 次提交
  13. 20 3月, 2015 1 次提交
    • B
      loop/usb/vhost-scsi/xen-scsiback: Fix use of __transport_register_session · 2f450cc1
      Bart Van Assche 提交于
      This patch changes loopback, usb-gadget, vhost-scsi and xen-scsiback
      fabric code to invoke transport_register_session() instead of the
      unprotected flavour, to ensure se_tpg->session_lock is taken when
      adding new session list nodes to se_tpg->tpg_sess_list.
      
      Note that since these four fabric drivers already hold their own
      internal TPG mutexes when accessing se_tpg->tpg_sess_list, and
      consist of a single se_session created through configfs attribute
      access, no list corruption can currently occur.
      
      So for correctness sake, go ahead and use the se_tpg->session_lock
      protected version for these four fabric drivers.
      Signed-off-by: NBart Van Assche <bart.vanassche@sandisk.com>
      Signed-off-by: NNicholas Bellinger <nab@linux-iscsi.org>
      2f450cc1
  14. 04 12月, 2014 2 次提交
  15. 02 12月, 2014 1 次提交
  16. 24 11月, 2014 2 次提交
  17. 12 11月, 2014 4 次提交
  18. 04 10月, 2014 1 次提交
  19. 02 10月, 2014 1 次提交
    • J
      target: encapsulate smp_mb__after_atomic() · 33940d09
      Joern Engel 提交于
      The target code has a rather generous helping of smp_mb__after_atomic()
      throughout the code base.  Most atomic operations were followed by one
      and none were preceded by smp_mb__before_atomic(), nor accompanied by a
      comment explaining the need for a barrier.
      
      Instead of trying to prove for every case whether or not it is needed,
      this patch introduces atomic_inc_mb() and atomic_dec_mb(), which
      explicitly include the memory barriers before and after the atomic
      operation.  For now they are defined in a target header, although they
      could be of general use.
      
      Most of the existing atomic/mb combinations were replaced by the new
      helpers.  In a few cases the atomic was sandwiched in
      spin_lock/spin_unlock and I simply removed the barrier.
      
      I suspect that in most cases the correct conversion would have been to
      drop the barrier.  I also suspect that a few cases exist where a) the
      barrier was necessary and b) a second barrier before the atomic would
      have been necessary and got added by this patch.
      Signed-off-by: NJoern Engel <joern@logfs.org>
      Signed-off-by: NNicholas Bellinger <nab@linux-iscsi.org>
      33940d09