1. 13 6月, 2017 3 次提交
  2. 19 3月, 2017 2 次提交
  3. 09 2月, 2017 8 次提交
  4. 18 1月, 2017 1 次提交
  5. 10 5月, 2016 1 次提交
  6. 11 3月, 2016 1 次提交
  7. 30 1月, 2016 1 次提交
  8. 08 1月, 2016 4 次提交
  9. 25 7月, 2015 5 次提交
  10. 31 5月, 2015 1 次提交
    • B
      target: Move task tag into struct se_cmd + support 64-bit tags · 649ee054
      Bart Van Assche 提交于
      Simplify target core and target drivers by storing the task tag
      a.k.a. command identifier inside struct se_cmd.
      
      For several transports (e.g. SRP) tags are 64 bits wide.
      Hence add support for 64-bit tags.
      
      (Fix core_tmr_abort_task conversion spec warnings - nab)
      (Fix up usb-gadget to use 16-bit tags - HCH + bart)
      Signed-off-by: NBart Van Assche <bart.vanassche@sandisk.com>
      Cc: Christoph Hellwig <hch@lst.de>
      Cc: Andy Grover <agrover@redhat.com>
      Cc: Sagi Grimberg <sagig@mellanox.com>
      Cc: <qla2xxx-upstream@qlogic.com>
      Cc: Felipe Balbi <balbi@ti.com>
      Cc: Michael S. Tsirkin <mst@redhat.com>
      Cc: Juergen Gross <jgross@suse.com>
      Signed-off-by: NNicholas Bellinger <nab@linux-iscsi.org>
      649ee054
  11. 02 10月, 2014 2 次提交
  12. 25 9月, 2014 4 次提交
  13. 25 6月, 2014 1 次提交
  14. 04 6月, 2014 1 次提交
    • N
      qla2xxx: Convert to percpu_ida session tag pre-allocation · 51a07f84
      Nicholas Bellinger 提交于
      This patch converts qla2xxx target code to use generic percpu_ida
      tag allocation provided by target-core, thus removing the original
      kmem_cache_zalloc() for each struct qla_tgt_cmd descriptor in the
      incoming ATIO packet fast-path.
      
      This includes the conversion of qlt_handle_cmd_for_atio() to perform
      qla_tgt_sess lookup before dispatching a command descriptor into
      qla_tgt_wq process context, along with handling the case where no
      active session exists, and subsequently kicking off a seperate
      process context for qlt_create_sess_from_atio() to create a new one.
      
      It also includes moving tag allocation into generic code within
      qlt_get_tag(), so that the same logic can be shared between
      qlt_handle_cmd_for_atio() + qlt_create_sess_from_atio() contexts.
      Also, __qlt_do_work() has been made generic between both normal
      process context in qlt_do_work() + qlt_create_sess_from_atio().
      
      Next, update qlt_free_cmd() to release the percpu-ida tags, and
      drop the now-unused global qla_tgt_cmd_cachep.
      
      Finally in tcm_qla2xxx code, tcm_qla2xxx_check_initiator_node_acl()
      has been updated to use transport_init_session_tags() along with a
      hardcoded TCM_QLA2XXX_DEFAULT_TAGS=2088 as the number of qla_tgt_cmd
      descriptors to pre-allocate per qla_tgt_sess instance.
      
      (Use ha->fw_xcb_count if available to calculate num_tags, and
       also factor in extra pad tags - Quinn)
      
      Cc: Saurav Kashyap <saurav.kashyap@qlogic.com>
      Cc: Quinn Tran <quinn.tran@qlogic.com>
      Cc: Giridhar Malavali <giridhar.malavali@qlogic.com>
      Cc: Chad Dupuis <chad.dupuis@qlogic.com>
      Cc: Roland Dreier <roland@kernel.org>
      Cc: Christoph Hellwig <hch@lst.de>
      Signed-off-by: NNicholas Bellinger <nab@linux-iscsi.org>
      51a07f84
  15. 03 6月, 2014 1 次提交
  16. 19 5月, 2014 1 次提交
  17. 21 2月, 2014 1 次提交
    • N
      qla2xxx: Check + fail when npiv_vports_inuse exists in shutdown · 3c231bda
      Nicholas Bellinger 提交于
      This patch adds an check to qlt_stop_phase1() to avoid shutdown
      when the base_vha contains a non-zero fc_host->npiv_vports_inuse
      count.
      
      This includes holding qla_tgt_mutex in qlt_stop_phase1() between
      the fc_host->npiv_vports_inuse check + setting of tgt->tgt_stop to
      avoid a possible race between qlt_lport_register() -> tcm_qla2xxx
      -> tcm_qla2xxx_lport_register_npiv_cb() calling fc_vport_create().
      
      Cc: Sawan Chandak <sawan.chandak@qlogic.com>
      Cc: Quinn Tran <quinn.tran@qlogic.com>
      Cc: Saurav Kashyap <saurav.kashyap@qlogic.com>
      Cc: Giridhar Malavali <giridhar.malavali@qlogic.com>
      Signed-off-by: NNicholas Bellinger <nab@linux-iscsi.org>
      3c231bda
  18. 13 2月, 2014 1 次提交
  19. 19 1月, 2014 1 次提交
    • N
      qla2xxx: Configure NPIV fc_vport via tcm_qla2xxx_npiv_make_lport · 49a47f2c
      Nicholas Bellinger 提交于
      This patch changes qla2xxx qlt_lport_register() code to accept
      target_lport_ptr + npiv_wwpn + npiv_wwnn parameters, and updates
      tcm_qla2xxx to use the new tcm_qla2xxx_lport_register_npiv_cb()
      callback for invoking fc_vport_create() from configfs context
      via tcm_qla2xxx_npiv_make_lport() code.
      
      In order for this to work, the qlt_lport_register() callback is
      now called without holding qla_tgt_mutex, as the fc_vport creation
      process will call qlt_vport_create() -> qlt_add_target(), which
      already expects to acquire it.
      
      It enforces /sys/kernel/config/target/qla2xxx_npiv/$NPIV_WWPN
      naming in the following format:
      
           $PHYSICAL_WWPN@$NPIV_WWPN:$NPIV_WWNN
      
      and assumes the $PHYSICAL_WWPN in question has already had been
      configured for target mode in non NPIV mode.
      
      Finally, it updates existing tcm_qla2xxx_lport_register_cb() logic
      to setup the non NPIV assignments that have now been moved out of
      qlt_lport_register() code.
      
      Cc: Sawan Chandak <sawan.chandak@qlogic.com>
      Cc: Quinn Tran <quinn.tran@qlogic.com>
      Cc: Saurav Kashyap <saurav.kashyap@qlogic.com>
      Signed-off-by: NNicholas Bellinger <nab@linux-iscsi.org>
      49a47f2c