summaryrefslogtreecommitdiff
path: root/include/net/scm.h
diff options
context:
space:
mode:
authorNicholas Bellinger <nab@linux-iscsi.org>2013-10-02 04:04:40 +0400
committerNicholas Bellinger <nab@linux-iscsi.org>2013-10-03 15:24:07 +0400
commitdb60df88ec39715fc3fb2a846cf35837e074c11d (patch)
tree12b29dda83448869226325fad6ea67e2882c6b0b /include/net/scm.h
parentd8855c154e748c9ccd7c78e6478560ed61438e7d (diff)
downloadlinux-db60df88ec39715fc3fb2a846cf35837e074c11d.tar.xz
target: Fail on non zero scsi_status in compare_and_write_callback
This patch addresses a bug for backends such as IBLOCK that perform asynchronous completion via transport_complete_cmd(), that will call target_complete_failure_work() -> transport_generic_request_failure(), upon exception status and invoke cmd->transport_complete_callback() -> compare_and_write_callback() incorrectly during the failure case. It adds a check for a non zero se_cmd->scsi_status within the first invocation of compare_and_write_callback(), and will jump to out plus up se_device->caw_sem before exiting the callback. Reported-by: Thomas Glanzmann <thomas@glanzmann.de> Tested-by: Thomas Glanzmann <thomas@glanzmann.de> Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
Diffstat (limited to 'include/net/scm.h')
0 files changed, 0 insertions, 0 deletions