Skip to content
Snippets Groups Projects
  1. Jul 26, 2011
    • Nicholas Bellinger's avatar
      target: Convert to DIV_ROUND_UP_SECTOR_T usage for sectors / dev_max_sectors · 277c5f27
      Nicholas Bellinger authored
      
      This patch adds the new macro usage of include/linux/kernel.h:DIV_ROUND_UP_SECTOR_T
      for the new DIV_ROUND_UP_ULL() usage for 32-bit architectures with unsigned long long
      sector_t division in transport_allocate_data_tasks() usage for target_core_mod v4.1
      
      Reported-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarNicholas A. Bellinger <nab@linux-iscsi.org>
      277c5f27
    • Nicholas Bellinger's avatar
      iscsi-target: Add iSCSI fabric support for target v4.1 · e48354ce
      Nicholas Bellinger authored
      The Linux-iSCSI.org target module is a full featured in-kernel
      software implementation of iSCSI target mode (RFC-3720) for the
      current WIP mainline target v4.1 infrastructure code for the v3.1
      kernel.  More information can be found here:
      
      http://linux-iscsi.org/wiki/ISCSI
      
      
      
      This includes support for:
      
         * RFC-3720 defined request / response state machines and support for
           all defined iSCSI operation codes from Section 10.2.1.2 using libiscsi
           include/scsi/iscsi_proto.h PDU definitions
         * Target v4.1 compatible control plane using the generic layout in
           target_core_fabric_configfs.c and fabric dependent attributes
           within /sys/kernel/config/target/iscsi/ subdirectories.
         * Target v4.1 compatible iSCSI statistics based on RFC-4544 (iSCSI MIBS)
         * Support for IPv6 and IPv4 network portals in M:N mapping to TPGs
         * iSCSI Error Recovery Hierarchy support
         * Per iSCSI connection RX/TX thread pair scheduling affinity
         * crc32c + crc32c_intel SSEv4 instruction offload support using libcrypto
         * CHAP Authentication support using libcrypto
         * Conversion to use internal SGl allocation with iscsit_alloc_buffs() ->
           transport_generic_map_mem_to_cmd()
      
      (nab: Fix iscsi_proto.h struct scsi_lun usage from linux-next in commit:
            iscsi: Use struct scsi_lun in iscsi structs instead of u8[8])
      (nab: Fix 32-bit compile warnings)
      
      Reviewed-by: default avatarChristoph Hellwig <hch@lst.de>
      Reviewed-by: default avatarAndy Grover <agrover@redhat.com>
      Acked-by: default avatarRoland Dreier <roland@kernel.org>
      Signed-off-by: default avatarNicholas A. Bellinger <nab@linux-iscsi.org>
      e48354ce
  2. Jul 22, 2011
  3. Jun 29, 2011
    • Kiran Patil's avatar
      [SCSI] tcm_fc: Fixing reference counting problem which was causing ft_sess to be deleted. · f2f7b09c
      Kiran Patil authored
      
      Problem: After fixing the issue in TCM core w.r.t LUN Reset (Task
      Management request) , ran into issue where during the completing of
      this LUN Reset command, reference count of "ft_sess" drops to zero
      which caused "sess" to be deleted.
      
      Fix: As part of handling task management request (e.g. LUN Reset), TCM
      core function "transport_generic_do_tmr" ends up calling ft_free_cmd
      which in turn calls "ft_sess_put" (which drops session's reference
      count by 1) and then frees ft_cmd. Then function
      "transport_generic_do_tmr" calls "transport_cmd_check_stop" which in
      turn also calls ft_free_cmd (which calls ft_sess_put - which drops
      reference count of sess by 1, hence reference count of sess becomes
      zero and session gets deleted). Fix is to just send response in case
      of tmr from function "ft_queue_resp_code" and not delete "ft_cmd"
      (means don't call ft_free_cmd). Earlier code was to send the response
      code and also free ft_cmd. ft_free_cmd will be freed later after
      sending response code as a result of "transport_cmd_check_stop" (which
      calls ft_release_cmd -> ft_free_cmd) being called from
      "transport_generic_do_tmr" after sening TMR response code.
      
      Notes/Dependencies: This bug was found after fixing NULL pointer
      access issue in TCM core (in LUN Reset codepath)
      
      Signed-off-by: default avatarKiran Patil <kiran.patil@intel.com>
      Signed-off-by: default avatarRobert Love <robert.w.love@intel.com>
      Signed-off-by: default avatarJames Bottomley <JBottomley@Parallels.com>
      f2f7b09c
Loading