• Nicholas Bellinger's avatar
    iscsi-target: Convert to per-cpu ida_alloc + ida_free command map · 988e3a85
    Nicholas Bellinger authored
    This patch changes iscsi-target to use transport_alloc_session_tags()
    pre-allocation logic for per-cpu session tag pooling with internal
    ida_alloc() + ida_free() calls based upon the saved se_cmd->map_tag id.
    
    This includes tag pool setup based upon per NodeACL queue_depth after
    locating se_node_acl in iscsi_target_locate_portal().
    
    Also update iscsit_allocate_cmd() and iscsit_release_cmd() to use
    percpu_ida_alloc() and percpu_ida_free() respectively.
    
    v5 changes;
      - Convert to percpu_ida.h include
    
    v2 changes:
      - Fix bug with SessionType=Discovery in iscsi_target_locate_portal()
    
    Cc: Or Gerlitz <ogerlitz@mellanox.com>
    Cc: Kent Overstreet <kmo@daterainc.com>
    Signed-off-by: default avatarNicholas Bellinger <nab@daterainc.com>
    988e3a85
iscsi_target_util.c 37.9 KB