From: Paolo Bonzini Date: Tue, 3 Jan 2017 17:20:28 +0000 (+0100) Subject: scsi-block: fix direction of BYTCHK test for VERIFY commands X-Git-Tag: v2.8.1~66 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=9f6cb916f2f72175bb8c7757662d9f50616fc4c0;p=thirdparty%2Fqemu.git scsi-block: fix direction of BYTCHK test for VERIFY commands The direction is wrong; scsi_block_is_passthrough returns false for commands that *can* use sglists. Reported-by: Zhang Qian Fixes: 8fdc7839e40f43a426bc7e858cf1dbfe315a3804 Cc: qemu-stable@nongnu.org Signed-off-by: Paolo Bonzini (cherry picked from commit 1f8af0d186abf9ef775a74d41bf2852ed8d59b63) Signed-off-by: Michael Roth --- diff --git a/hw/scsi/scsi-disk.c b/hw/scsi/scsi-disk.c index a96319138ac..5796226704d 100644 --- a/hw/scsi/scsi-disk.c +++ b/hw/scsi/scsi-disk.c @@ -2694,7 +2694,7 @@ static bool scsi_block_is_passthrough(SCSIDiskState *s, uint8_t *buf) * for the number of logical blocks specified in the length * field). For other modes, do not use scatter/gather operation. */ - if ((buf[1] & 6) != 2) { + if ((buf[1] & 6) == 2) { return false; } break;