Bug 1338043 - scsi-block fix - receive the right SCSI status on reads and writes
Summary: scsi-block fix - receive the right SCSI status on reads and writes
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: qemu-kvm-rhev
Version: 7.3
Hardware: Unspecified
OS: Unspecified
high
high
Target Milestone: rc
: ---
Assignee: Paolo Bonzini
QA Contact: FuXiangChun
URL:
Whiteboard: storage
Depends On:
Blocks: 1305606 1219841
TreeView+ depends on / blocked
 
Reported: 2016-05-20 21:33 UTC by Karen Noel
Modified: 2019-12-16 05:49 UTC (History)
14 users (show)

Fixed In Version: qemu-kvm-rhev-2.6.0-6.el7
Doc Type: Enhancement
Doc Text:
The vioscsi.sys file is now compatible with Microsoft Cluster Services, which enables the Windows virtio-scsi driver to support Windows Server Failover Clustering (WSFC) using shared storage. As a result, vioscsi.sys can pass all tests in the "Validate a Configuration" process.
Clone Of: 1219841
Environment:
Last Closed: 2016-11-07 21:11:01 UTC
Target Upstream Version:


Attachments (Terms of Use)
storage validate testing result (143.20 KB, image/png)
2016-09-22 05:52 UTC, FuXiangChun
no flags Details


Links
System ID Priority Status Summary Last Updated
Red Hat Product Errata RHBA-2016:2673 normal SHIPPED_LIVE qemu-kvm-rhev bug fix and enhancement update 2016-11-08 01:06:13 UTC

Description Karen Noel 2016-05-20 21:33:34 UTC
This BZ is for adding scsi-block fixes to qemu-kvm-rhev, needed for MS cluster services.

See upstream work:

[Qemu-devel] [PATCH 0/4] scsi-block: receive the right SCSI status on reads and writes
http://marc.info/?l=qemu-devel&m=146296689703152&w=2

"scsi-block uses the block layer for reads and writes in order to avoid
allocating bounce buffers as big as the transferred data.  We know how
to split a large transfer to multiple reads and writes, and thus we can
use scsi-disk.c's existing code to do I/O in multiple chunks (for non-s/g
SCSI hosts) or through the DMA helpers (for s/g SCSI hosts).

Unfortunately, this has the side effect of eating the SCSI status except
in the very few cases where we can convert an errno code back to a SCSI
status.  It puts a big wrench in persistent reservations support in the
guest, for example.

Luckily, splitting a large transfer into multiple SBC commands is just as
easy, and this is what the last patch does.  It takes the original CDB,
patches in a modified starting sector and sector count, and executes the
SCSI command through blk_aio_ioctl.  It is also easy to pass a QEMUIOVector
to SG_IO, so that s/g SCSI hosts keep the performance."

Comment 1 Miroslav Rezanina 2016-06-06 10:51:26 UTC
Fix included in qemu-kvm-rhev-2.6.0-5.el7

Comment 3 Miroslav Rezanina 2016-06-15 13:08:17 UTC
Fix included in qemu-kvm-rhev-2.6.0-6.el7

Comment 14 FuXiangChun 2016-09-22 05:52:09 UTC
Created attachment 1203599 [details]
storage validate testing result

Comment 20 errata-xmlrpc 2016-11-07 21:11:01 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://rhn.redhat.com/errata/RHBA-2016-2673.html


Note You need to log in before you can comment on or make changes to this bug.