]> git.kernelconcepts.de Git - karo-tx-linux.git/commit
target: Add TARGET_SCF_LOOKUP_LUN_FROM_TAG support for ABORT_TASK
authorNicholas Bellinger <nab@linux-iscsi.org>
Sat, 3 Jun 2017 13:55:50 +0000 (06:55 -0700)
committerNicholas Bellinger <nab@linux-iscsi.org>
Fri, 7 Jul 2017 05:57:56 +0000 (22:57 -0700)
commit5465e7d3b99bbaa823ae4f8e538543e7d6cdc530
tree7ab2a72489d5e29ef9da27181edabc5190713093
parenteeb64d239ea664592ff8f1bce5546209a6593df5
target: Add TARGET_SCF_LOOKUP_LUN_FROM_TAG support for ABORT_TASK

This patch introduces support in target_submit_tmr() for locating a
unpacked_lun from an existing se_cmd->tag during ABORT_TASK.

When TARGET_SCF_LOOKUP_LUN_FROM_TAG is set, target_submit_tmr()
will do the extra lookup via target_lookup_lun_from_tag() and
subsequently invoke transport_lookup_tmr_lun() so a proper
percpu se_lun->lun_ref is taken before workqueue dispatch into
se_device->tmr_wq happens.

Aside from the extra target_lookup_lun_from_tag(), the existing
code-path remains unchanged.

Reviewed-by: Himanshu Madhani <himanshu.madhani@cavium.com>
Reviewed-by: Quinn Tran <quinn.tran@cavium.com>
Cc: Mike Christie <mchristi@redhat.com>
Cc: Hannes Reinecke <hare@suse.com>
Cc: Christoph Hellwig <hch@lst.de>
Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
drivers/target/target_core_transport.c
include/target/target_core_base.h