summaryrefslogtreecommitdiff
path: root/arch/x86/ia32
diff options
context:
space:
mode:
authorNicholas Bellinger <nab@linux-iscsi.org>2016-03-06 01:40:01 +0000
committerSasha Levin <sasha.levin@oracle.com>2016-03-05 22:13:45 -0500
commit857b2493a94ef11776e9350067f7065d2a135edc (patch)
treea416ab0321c094534c0abfadc1d5bc4c7217f2c2 /arch/x86/ia32
parent2c1ae9df17bb9b0d8efd520736f1f7effa579241 (diff)
downloadlinux-rt-857b2493a94ef11776e9350067f7065d2a135edc.tar.gz
target: Fix race with SCF_SEND_DELAYED_TAS handling
commit 310d3d314be7f0a84011ebdc4bdccbcae9755a87 upstream. This patch fixes a race between setting of SCF_SEND_DELAYED_TAS in transport_send_task_abort(), and check of the same bit in transport_check_aborted_status(). It adds a __transport_check_aborted_status() version that is used by target_execute_cmd() when se_cmd->t_state_lock is held, and a transport_check_aborted_status() wrapper for all other existing callers. Also, it handles the case where the check happens before transport_send_task_abort() gets called. For this, go ahead and set SCF_SEND_DELAYED_TAS early when necessary, and have transport_send_task_abort() send the abort. Cc: Quinn Tran <quinn.tran@qlogic.com> Cc: Himanshu Madhani <himanshu.madhani@qlogic.com> Cc: Sagi Grimberg <sagig@mellanox.com> Cc: Christoph Hellwig <hch@lst.de> Cc: Hannes Reinecke <hare@suse.de> Cc: Andy Grover <agrover@redhat.com> Cc: Mike Christie <mchristi@redhat.com> Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org> Signed-off-by: Sasha Levin <sasha.levin@oracle.com>
Diffstat (limited to 'arch/x86/ia32')
0 files changed, 0 insertions, 0 deletions