RHEL Engineering is moving the tracking of its product development work on RHEL 6 through RHEL 9 to Red Hat Jira (issues.redhat.com). If you're a Red Hat customer, please continue to file support cases via the Red Hat customer portal. If you're not, please head to the "RHEL project" in Red Hat Jira and file new tickets here. Individual Bugzilla bugs in the statuses "NEW", "ASSIGNED", and "POST" are being migrated throughout September 2023. Bugs of Red Hat partners with an assigned Engineering Partner Manager (EPM) are migrated in late September as per pre-agreed dates. Bugs against components "kernel", "kernel-rt", and "kpatch" are only migrated if still in "NEW" or "ASSIGNED". If you cannot log in to RH Jira, please consult article #7032570. That failing, please send an e-mail to the RH Jira admins at rh-issues@redhat.com to troubleshoot your issue as a user management inquiry. The email creates a ServiceNow ticket with Red Hat. Individual Bugzilla bugs that are migrated will be moved to status "CLOSED", resolution "MIGRATED", and set with "MigratedToJIRA" in "Keywords". The link to the successor Jira issue will be found under "Links", have a little "two-footprint" icon next to it, and direct you to the "RHEL project" in Red Hat Jira (issue links are of type "https://issues.redhat.com/browse/RHEL-XXXX", where "X" is a digit). This same link will be available in a blue banner at the top of the page informing you that that bug has been migrated.
Bug 1032412 - opening read-only iscsi lun as read-write should fail
Summary: opening read-only iscsi lun as read-write should fail
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: qemu-kvm
Version: 7.0
Hardware: Unspecified
OS: Unspecified
medium
medium
Target Milestone: rc
: ---
Assignee: Fam Zheng
QA Contact: Virtualization Bugs
URL:
Whiteboard:
Depends On:
Blocks: 1160102
TreeView+ depends on / blocked
 
Reported: 2013-11-20 06:50 UTC by Sibiao Luo
Modified: 2015-11-19 04:52 UTC (History)
12 users (show)

Fixed In Version: qemu-kvm-1.5.3-87.el7
Doc Type: Bug Fix
Doc Text:
Clone Of:
: 1160102 (view as bug list)
Environment:
Last Closed: 2015-11-19 04:52:06 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Product Errata RHBA-2015:2213 0 normal SHIPPED_LIVE qemu-kvm bug fix and enhancement update 2015-11-19 08:16:10 UTC

Description Sibiao Luo 2013-11-20 06:50:30 UTC
Description of problem:
boot guest with a data disk using libiscsi libiscsi backend (Readonly: Yes), then try to make file system to it in guest, but then QEMU will flood with "qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)" and VM in paused (io-error) status.
The best way to fix it is that we could refuse to start a guest with a read-only libiscsi backend if the device is supposed to be read-write. Just like bug 901484.

Version-Release number of selected component (if applicable):
host info:
# uname -r && rpm -q qemu-kvm-rhev
3.10.0-50.el7.x86_64
qemu-kvm-rhev-1.5.3-19.el7.x86_64
guest info:
# uname -r && rpm -q qemu-kvm-rhev
3.10.0-50.el7.x86_64
qemu-kvm-rhev-1.5.3-19.el7.x86_64
guest info:
rhel6.5 32bit

How reproducible:
100%

Steps to Reproduce:
1.prepare a iSCSI LUN specified readonly for it.
# tgtadm --lld iscsi --op show --mode target
Target 1: iqn.2013-11.com.example:storage.disk1.juli.xyz
    System information:
        Driver: iscsi
        State: ready
    I_T nexus information:
    LUN information:
        LUN: 0
            Type: controller
            SCSI ID: IET     00010000
            SCSI SN: beaf10
            Size: 0 MB, Block size: 1
            Online: Yes
            Removable media: No
            Prevent removal: No
            Readonly: No
            Backing store type: null
            Backing store path: None
            Backing store flags: 
...
        LUN: 3
            Type: disk
            SCSI ID: IET     00010003
            SCSI SN: beaf13
            Size: 53695 MB, Block size: 512
            Online: Yes
            Removable media: No
            Prevent removal: No
            Readonly: No
            Backing store type: rdwr
            Backing store path: /dev/sda7
            Backing store flags: 
...
        LUN: 5
            Type: disk
            SCSI ID: IET     00010005
            SCSI SN: beaf15
            Size: 524 MB, Block size: 512
            Online: Yes
            Removable media: No
            Prevent removal: No
            Readonly: Yes
            Backing store type: rdwr
            Backing store path: /sluo-disk
            Backing store flags: 
    Account information:
    ACL information:
        ALL
...
2.boot guest with a data disk using libiscsi libiscsi backend (Readonly: Yes).
e.g:# /usr/libexec/qemu-kvm -M q35 -S -cpu SandyBridge -enable-kvm -m 2048 -smp 2,sockets=2,cores=1,threads=1 -no-kvm-pit-reinjection...-drive file=iscsi://10.66.6.82:3260/iqn.2013-11.com.example:storage.disk1.juli.xyz/2,if=none,id=drive-virtio-disk,format=qcow2,cache=none,aio=native,werror=stop,rerror=stop -device virtio-blk-pci,vectors=0,bus=pcie.0,addr=0x4,scsi=off,drive=drive-virtio-disk,id=virtio-disk,bootindex=1...-drive file=iscsi://10.66.6.82:3260/iqn.2013-11.com.example:storage.disk1.juli.xyz/5,if=none,id=drive-data-disk,format=raw,cache=none,werror=stop,rerror=stop -device virtio-blk-pci,bus=pcie.0,addr=0x7,drive=drive-data-disk,id=data-disk
3.make file system(EXT4) to it in guest.
# mkfs.ext4 /dev/vdb

Actual results:
after step 3, QEMU will flood with "qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)" and VM in paused (io-error) status. the guest kernel did output any logs.
(qemu) info block
drive-virtio-disk: removable=0 io-status=ok file=iscsi://10.66.6.82:3260/iqn.2013-11.com.example:storage.disk1.juli.xyz/2 ro=0 drv=qcow2 encrypted=0 bps=0 bps_rd=0 bps_wr=0 iops=0 iops_rd=0 iops_wr=0
drive-data-disk: removable=0 io-status=ok file=iscsi://10.66.6.82:3260/iqn.2013-11.com.example:storage.disk1.juli.xyz/5 ro=0 drv=raw encrypted=0 bps=0 bps_rd=0 bps_wr=0 iops=0 iops_rd=0 iops_wr=0
ide1-cd0: removable=1 locked=0 tray-open=0 [not inserted]
floppy0: removable=1 locked=0 tray-open=0 [not inserted]
sd0: removable=1 locked=0 tray-open=0 [not inserted]
(qemu) qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)

(qemu) info status 
VM status: paused (io-error)
(qemu) cont
(qemu) qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:(null)(3) ASCQ:(null)(0x1100)

Expected results:
It should not cause VM pause status. the best way to fix it is that we could refuse to start a guest with a read-only libiscsi backend if the device is supposed to be read-write.

Additional info:

Comment 1 Sibiao Luo 2013-11-20 06:51:57 UTC
# lscpu
Architecture:          x86_64
CPU op-mode(s):        32-bit, 64-bit
Byte Order:            Little Endian
CPU(s):                8
On-line CPU(s) list:   0-7
Thread(s) per core:    2
Core(s) per socket:    4
Socket(s):             1
NUMA node(s):          1
Vendor ID:             GenuineIntel
CPU family:            6
Model:                 42
Model name:            Intel(R) Core(TM) i7-2600 CPU @ 3.40GHz
Stepping:              7
CPU MHz:               1768.000
BogoMIPS:              6782.63
Virtualization:        VT-x
L1d cache:             32K
L1i cache:             32K
L2 cache:              256K
L3 cache:              8192K
NUMA node0 CPU(s):     0-7

My qemu-kvm command line:
# /usr/libexec/qemu-kvm -M q35 -S -cpu SandyBridge -enable-kvm -m 2048 -smp 2,sockets=2,cores=1,threads=1 -no-kvm-pit-reinjection -usb -device usb-tablet,id=input0 -name sluo -uuid 990ea161-6b67-47b2-b803-19fb01d30d10 -rtc base=localtime,clock=host,driftfix=slew -device virtio-serial-pci,id=virtio-serial0,max_ports=16,vectors=0,bus=pcie.0,addr=0x3 -chardev socket,id=channel1,path=/tmp/helloworld1,server,nowait -device virtserialport,chardev=channel1,name=com.redhat.rhevm.vdsm,bus=virtio-serial0.0,id=port1 -chardev socket,id=channel2,path=/tmp/helloworld2,server,nowait -device virtserialport,chardev=channel2,name=com.redhat.rhevm.vdsm,bus=virtio-serial0.0,id=port2 -drive file=iscsi://10.66.6.82:3260/iqn.2013-11.com.example:storage.disk1.juli.xyz/2,if=none,id=drive-virtio-disk,format=qcow2,cache=none,aio=native,werror=stop,rerror=stop -device virtio-blk-pci,vectors=0,bus=pcie.0,addr=0x4,scsi=off,drive=drive-virtio-disk,id=virtio-disk,bootindex=1 -netdev tap,id=hostnet0,vhost=on,script=/etc/qemu-ifup -device virtio-net-pci,netdev=hostnet0,id=virtio-net-pci0,mac=00:01:02:03:04:05,bus=pcie.0,addr=0x5 -device virtio-balloon-pci,id=ballooning,bus=pcie.0,addr=0x6 -global PIIX4_PM.disable_s3=0 -global PIIX4_PM.disable_s4=0 -drive file=iscsi://10.66.6.82:3260/iqn.2013-11.com.example:storage.disk1.juli.xyz/5,if=none,id=drive-data-disk,format=raw,cache=none,werror=stop,rerror=stop -device virtio-blk-pci,bus=pcie.0,addr=0x7,drive=drive-data-disk,id=data-disk -k en-us -boot menu=on -qmp tcp:0:4444,server,nowait -serial unix:/tmp/ttyS0,server,nowait -vnc :1 -spice disable-ticketing,port=5931 -monitor stdio

Comment 4 Fam Zheng 2014-10-30 11:30:21 UTC
Upstream patch to fix this:

http://lists.gnu.org/archive/html/qemu-devel/2014-10/msg03639.html

Comment 6 Sibiao Luo 2015-01-20 02:45:44 UTC
Tried the latest qemu-kvm-1.5.3-85.el7.x86_64 which still hit this issue.

host info:
# uname -r && rpm -q qemu-kvm
3.10.0-222.el7.x86_64
qemu-kvm-1.5.3-85.el7.x86_64
guest info:
# uname -r
3.10.0-222.el7.x86_64

host ]# ls -lh /dev/disk/by-path/ip-10.66.83.199\:3260-iscsi-iqn.2015-01.com.sluo\:server.target0-lun-1 
lrwxrwxrwx 1 root root 9 Jan 20 10:27 /dev/disk/by-path/ip-10.66.83.199:3260-iscsi-iqn.2015-01.com.sluo:server.target0-lun-1 -> ../../sdb
host ]# mkfs.ext4 /dev/sdb
mke2fs 1.42.9 (28-Dec-2013)
/dev/sdb is entire device, not just one partition!
Proceed anyway? (y,n) y
/dev/sdb: Read-only file system while setting up superblock

e.g:...-drive file=iscsi://10.66.83.199:3260/iqn.2015-01.com.sluo:server.target0/1,if=none,id=drive-data-disk,format=raw,cache=none,aio=native,werror=stop,rerror=stop -device virtio-blk-pci,id=data-disk,bus=pci.0,addr=0x8,drive=drive-data-disk

guest ]# mkfs.ext4 /dev/vda

(qemu) qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:DATA PROTECTION(7) ASCQ:WRITE_PROTECTED(0x2700)
block I/O error in device 'drive-data-disk': Input/output error (5)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:DATA PROTECTION(7) ASCQ:WRITE_PROTECTED(0x2700)
block I/O error in device 'drive-data-disk': Input/output error (5)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:DATA PROTECTION(7) ASCQ:WRITE_PROTECTED(0x2700)
block I/O error in device 'drive-data-disk': Input/output error (5)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:DATA PROTECTION(7) ASCQ:WRITE_PROTECTED(0x2700)
block I/O error in device 'drive-data-disk': Input/output error (5)
block I/O error in device 'drive-data-disk': Input/output error (5)
block I/O error in device 'drive-data-disk': Input/output error (5)
block I/O error in device 'drive-data-disk': Input/output error (5)
block I/O error in device 'drive-data-disk': Input/output error (5)
block I/O error in device 'drive-data-disk': Input/output error (5)
block I/O error in device 'drive-data-disk': Input/output error (5)
...
block I/O error in device 'drive-data-disk': Input/output error (5)
block I/O error in device 'drive-data-disk': Input/output error (5)

(qemu) info status 
VM status: paused (io-error)
(qemu) cont
(qemu) qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:DATA PROTECTION(7) ASCQ:WRITE_PROTECTED(0x2700)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:DATA PROTECTION(7) ASCQ:WRITE_PROTECTED(0x2700)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:DATA PROTECTION(7) ASCQ:WRITE_PROTECTED(0x2700)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:DATA PROTECTION(7) ASCQ:WRITE_PROTECTED(0x2700)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:DATA PROTECTION(7) ASCQ:WRITE_PROTECTED(0x2700)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:DATA PROTECTION(7) ASCQ:WRITE_PROTECTED(0x2700)
block I/O error in device 'drive-data-disk': Input/output error (5)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:DATA PROTECTION(7) ASCQ:WRITE_PROTECTED(0x2700)
block I/O error in device 'drive-data-disk': Input/output error (5)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:DATA PROTECTION(7) ASCQ:WRITE_PROTECTED(0x2700)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:DATA PROTECTION(7) ASCQ:WRITE_PROTECTED(0x2700)
block I/O error in device 'drive-data-disk': Input/output error (5)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:DATA PROTECTION(7) ASCQ:WRITE_PROTECTED(0x2700)
block I/O error in device 'drive-data-disk': Input/output error (5)
block I/O error in device 'drive-data-disk': Input/output error (5)
block I/O error in device 'drive-data-disk': Input/output error (5)
...

Base on above, this issue has not fixed at all, move to RE-ASSIGNED status, please correct me if any mistake, thanks.

Best Regards,
sluo

Comment 11 Miroslav Rezanina 2015-03-18 11:23:58 UTC
Fix included in qemu-kvm-1.5.3-87.el7

Comment 12 huiqingding 2015-03-30 06:16:24 UTC
Reproduce this bug using the following version:
kernel-3.10.0-232.el7.x86_64
qemu-kvm-1.5.3-60.el7.x86_64

1.boot guest with a data disk using libiscsi libiscsi backend (Readonly: Yes).
# /usr/libexec/qemu-kvm -cpu SandyBridge -m 4G -smp 1,cores=1,threads=1,sockets=64,maxcpus=240 -numa node -machine type=pc-i440fx-rhel7.0.0,dump-guest-core=on -enable-kvm  -device piix3-usb-uhci,id=usb -name winowns -nodefaults -nodefconfig  -device virtio-balloon-pci,id=balloon0  -spice port=5930,disable-ticketing -vga qxl -global PIIX4_PM.disable_s3=0 -global PIIX4_PM.disable_s4=0   -monitor stdio -drive file=/mnt/rhel7.1.qcow2,if=none,id=drive-data-disk,format=qcow2,cache=none,aio=native,werror=stop,rerror=stop,copy-on-read=off,serial=fux-ide,media=disk -device ide-drive,drive=drive-data-disk,id=system-disk,logical_block_size=512,physical_block_size=512,min_io_size=32,opt_io_size=64,discard_granularity=512,ver=fuxc-ver,bus=ide.0,unit=0,bootindex=1 -netdev tap,id=netdev0,script=/etc/qemu-ifup -device virtio-net-pci,netdev=netdev0,id=vn1,mac=52:54:00:b5:d5:d3 -qmp tcp:0:4466,server,nowait -serial unix:/tmp/ttym,server,nowait -drive file=iscsi://10.66.83.199:3260/iqn.2015-01.com.sluo:server.target1/5,if=none,id=drive-data-disk2,format=raw,cache=none,werror=stop,rerror=stop -device virtio-blk-pci,bus=pci.0,addr=0x7,drive=drive-data-disk2,id=data-disk2

2.make file system(EXT4) to it in guest.
# mkfs.ext4 /dev/vdb

Actual results:
after step 2, QEMU will flood with "qemu-kvm: Input/output error (5)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:DATA PROTECTION(7) ASCQ:WRITE_PROTECTED(0x2700)
block I/O error in device 'drive-data-disk2': Input/output error (5)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:DATA PROTECTION(7) ASCQ:WRITE_PROTECTED(0x2700)
block I/O error in device 'drive-data-disk2': Input/output error (5)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:DATA PROTECTION(7) ASCQ:WRITE_PROTECTED(0x2700)
block I/O error in device 'drive-data-disk2': Input/output error (5)
qemu-kvm: Failed to write16 data to iSCSI lun. SENSE KEY:DATA PROTECTION(7) ASCQ:WRITE_PROTECTED(0x2700)
block I/O error in device 'drive-data-disk2': Input/output error (5)
block I/O error in device 'drive-data-disk2': Input/output error (5)
block I/O error in device 'drive-data-disk2': Input/output error (5)
block I/O error in device 'drive-data-disk2': Input/output error (5)
block I/O error in device 'drive-data-disk2': Input/output error (5)
block I/O error in device 'drive-data-disk2': Input/output error (5)
block I/O error in device 'drive-data-disk2': Input/output error (5)
block I/O error in device 'drive-data-disk2': Input/output error (5)
block I/O error in device 'drive-data-disk2': Input/output error (5)
block I/O error in device 'drive-data-disk2': Input/output error (5)
block I/O error in device 'drive-data-disk2': Input/output error (5)
block I/O error in device 'drive-data-disk2': Input/output error (5)
block I/O error in device 'drive-data-disk2': Input/output error (5)
block I/O error in device 'drive-data-disk2': Input/output error (5)
block I/O error in device 'drive-data-disk2': Input/output error (5)
block I/O error in device 'drive-data-disk2': Input/output error (5)
block I/O error in device 'drive-data-disk2': Input/output error (5)
block I/O error in device 'drive-data-disk2': Input/output error (5)
block I/O error in device 'drive-data-disk2': Input/output error (5)
block I/O error in device 'drive-data-disk2': Input/output error (5)
block I/O error in device 'drive-data-disk2': Input/output error (5)
block I/O error in device 'drive-data-disk2': Input/output error (5)
block I/O error in device 'drive-data-disk2': Input/output error (5)
block I/O error in device 'drive-data-disk2': Input/output error (5)
block I/O error in device 'drive-data-disk2': Input/output error (5)
(qemu) info status
VM status: paused (io-error)

Comment 13 huiqingding 2015-03-30 06:21:55 UTC
Test this bug using the following version:
kernel-3.10.0-232.el7.x86_64
qemu-kvm-1.5.3-87.el7.x86_64

1.boot guest with a data disk using libiscsi libiscsi backend (Readonly: Yes).
# /usr/libexec/qemu-kvm -cpu SandyBridge -m 4G -smp 1,cores=1,threads=1,sockets=64,maxcpus=240 -numa node -machine type=pc-i440fx-rhel7.0.0,dump-guest-core=on -enable-kvm  -device piix3-usb-uhci,id=usb -name winowns -nodefaults -nodefconfig  -device virtio-balloon-pci,id=balloon0  -spice port=5930,disable-ticketing -vga qxl -global PIIX4_PM.disable_s3=0 -global PIIX4_PM.disable_s4=0   -monitor stdio -drive file=/mnt/rhel7.1.qcow2,if=none,id=drive-data-disk,format=qcow2,cache=none,aio=native,werror=stop,rerror=stop,copy-on-read=off,serial=fux-ide,media=disk -device ide-drive,drive=drive-data-disk,id=system-disk,logical_block_size=512,physical_block_size=512,min_io_size=32,opt_io_size=64,discard_granularity=512,ver=fuxc-ver,bus=ide.0,unit=0,bootindex=1 -netdev tap,id=netdev0,script=/etc/qemu-ifup -device virtio-net-pci,netdev=netdev0,id=vn1,mac=52:54:00:b5:d5:d3 -qmp tcp:0:4466,server,nowait -serial unix:/tmp/ttym,server,nowait -drive file=iscsi://10.66.83.199:3260/iqn.2015-01.com.sluo:server.target1/5,if=none,id=drive-data-disk2,format=raw,cache=none,werror=stop,rerror=stop -device virtio-blk-pci,bus=pci.0,addr=0x7,drive=drive-data-disk2,id=data-disk2

Actual results:
qemu-kvm quits with the error:
qemu-kvm: -drive file=iscsi://10.66.83.199:3260/iqn.2015-01.com.sluo:server.target1/5,if=none,id=drive-data-disk2,format=raw,cache=none,werror=stop,rerror=stop: could not open disk image iscsi://10.66.83.199:3260/iqn.2015-01.com.sluo:server.target1/5: Cannot open a write protected LUN as read-write

Based on the above results, this bug has been fixed.

Comment 18 errata-xmlrpc 2015-11-19 04:52:06 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-2015-2213.html


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