target: Set CMD_T_ACTIVE bit for Task Management Requests
authorNicholas Bellinger <nab@linux-iscsi.org>
Mon, 9 Jun 2014 23:13:20 +0000 (23:13 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 1 Jul 2014 03:12:00 +0000 (20:12 -0700)
commitbf7caca1f32d6fc1671a435345896d73aa136051
tree375119f07b1d5d9419305eb11764c2ad71bcd6c7
parentc75a5476ee099f5534402c6b42d34c89f7acb31c
target: Set CMD_T_ACTIVE bit for Task Management Requests

commit f15e9cd910c4d9da7de43f2181f362082fc45f0f upstream.

This patch fixes a bug where se_cmd descriptors associated with a
Task Management Request (TMR) where not setting CMD_T_ACTIVE before
being dispatched into target_tmr_work() process context.

This is required in order for transport_generic_free_cmd() ->
transport_wait_for_tasks() to wait on se_cmd->t_transport_stop_comp
if a session reset event occurs while an ABORT_TASK is outstanding
waiting for another I/O to complete.

Cc: Thomas Glanzmann <thomas@glanzmann.de>
Cc: Charalampos Pournaris <charpour@gmail.com>
Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/target/target_core_transport.c