summaryrefslogtreecommitdiffstats
path: root/include/linux/attribute_container.h
diff options
context:
space:
mode:
authorJames Bottomley2008-04-03 01:11:52 +0200
committerJames Bottomley2008-04-07 19:19:10 +0200
commitfa8e36c39b00a219d2c37250e493c3421e0e67e9 (patch)
tree81fae0291d92b703fa281dba31011b9e9c467f9a /include/linux/attribute_container.h
parent[SCSI] zfcp: Add docbook comments to debug trace. (diff)
downloadkernel-qcow2-linux-fa8e36c39b00a219d2c37250e493c3421e0e67e9.tar.gz
kernel-qcow2-linux-fa8e36c39b00a219d2c37250e493c3421e0e67e9.tar.xz
kernel-qcow2-linux-fa8e36c39b00a219d2c37250e493c3421e0e67e9.zip
[SCSI] fix barrier failure issue
Currently, if the barrier command fails, the error return isn't seen by the block layer and it proceeds on regardless. The problem is that SCSI always returns no error for REQ_TYPE_BLOCK_PC ... it expects the submitter to pick the errors out of req->errors, which the block barrier functions don't do. Since it appears that the way SG_IO and scsi_execute_request() work they discard the block error return and always use req->errors, the best fix for this is to have the SCSI layer return an error to block if one actually occurred (this also allows us to filter out spurious errors, like deferred sense). This patch is a bug fix that will need backporting to stable, but it's also quite a big change and in need of testing, so we'll incubate in the main kernel tree and backport at the -rc2 or so stage if no problems turn up. Acked-by: Jens Axboe <jens.axboe@oracle.com> Cc: Marcelo Tosatti <mtosatti@redhat.com> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
Diffstat (limited to 'include/linux/attribute_container.h')
0 files changed, 0 insertions, 0 deletions