Bug 1291930

Summary: Assigning direct LUN fails with error "scsi-block 'lun' devices do not support the serial property"
Product: Red Hat Enterprise Virtualization Manager Reporter: nijin ashok <nashok>
Component: vdsmAssignee: Maor <mlipchuk>
Status: CLOSED ERRATA QA Contact: Elad <ebenahar>
Severity: high Docs Contact:
Priority: high    
Version: 3.5.6CC: acanan, amarchuk, amureini, bazulay, ebenahar, eblake, eedri, lsurette, mgoldboi, mkalinin, mlipchuk, nsoffer, rbalakri, Rhev-m-bugs, sbonazzo, tnisan, ycui, yeylon, ykaul, ylavi
Target Milestone: ovirt-3.6.2Keywords: ZStream
Target Release: 3.6.0   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: vdsm-4.17.18 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
: 1299235 1299236 (view as bug list) Environment:
Last Closed: 2016-03-09 19:46:31 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: Storage RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1299235, 1299236, 1392746    

Description nijin ashok 2015-12-15 22:20:34 UTC
Description of problem:

When assigning a direct LUN with "SCSI Pass-Through" fails with error "libvirtError: unsupported configuration: scsi-block 'lun' devices do not support the serial property" in 7.2 hosts. 

==========
Thread-227::DEBUG::2015-12-15 14:44:09,413::vm::4030::vm.Vm::(hotplugDisk) vmId=`3d1cac46-71df-4e08-9aba-48f72ab97df8`::Hotplug disk xml: <disk device="lun" sgio="filtered" snapshot="no" type="block">
        <address bus="0" controller="0" target="0" type="drive" unit="1"/>
        <source dev="/dev/mapper/3600140560987fd5d50a4b0ca17a0168a"/>
        <target bus="scsi" dev="sdc"/>
        <serial></serial>
        <driver cache="none" error_policy="stop" io="native" name="qemu" type="raw"/>
</disk>

Thread-227::DEBUG::2015-12-15 14:44:09,517::libvirtconnection::151::root::(wrapper) Unknown libvirterror: ecode: 67 edom: 10 level: 2 message: unsupported configuration: scsi-block 'lun' devices do not support the serial property
=======

As per the bug #1021480 <serial> is no longer supported for type='block' device='lun'. However RHEV still passes the <serial></serial> to libvirt for these devices which fails with the mentioned error.    
 

Version-Release number of selected component (if applicable):

Red Hat Enterprise Virtualization Hypervisor release 7.2 (20151129.1.el7ev)
libvirt-1.2.17-13.el7.x86_64
rhevm-backend-3.5.6.2-0.1.el6ev.noarch

How reproducible:
100%

Steps to Reproduce:
1. Assign a Direct Lun to a VM with interface "Virtio-SCSI" and "Enable SCSI Pass-Through".

2. Operation fails with "unsupported configuration: scsi-block 'lun' devices do not support the serial property"


Actual results:

Assign a Direct Lun with SCSI Pass-Through fails.

Expected results:

Assign a Direct Lun with SCSI Pass-Through should work 

Additional info:

Comment 2 Nir Soffer 2016-01-13 21:35:04 UTC
Eric, seems that libvirt changed the behavior in an incompatible way, breaking
RHEV and other users that used to specify <serial> for lun devices (bug 1021480).

Shouldn't we expect libvirt apis to be backward compatible?

Comment 3 Eric Blake 2016-01-13 21:52:20 UTC
(In reply to Nir Soffer from comment #2)
> Eric, seems that libvirt changed the behavior in an incompatible way,
> breaking
> RHEV and other users that used to specify <serial> for lun devices (bug
> 1021480).
> 
> Shouldn't we expect libvirt apis to be backward compatible?

Was the <serial> specification previously honored, or just ignored?  Libvirt (tries to) guarantee that if something was documented as working, and has a guest-visible effect, then it will continue to work.  But if the tag was merely ignored previously and now loudly diagnosed as being extraneous, then it is not a guest-visible change, and a bit fuzzier on whether libvirt should have changed behavior.  At any rate, please raise this on the mailing list, with the problematic XML that libvirt used to parse.

Comment 5 Maor 2016-01-14 17:51:09 UTC
It looks like a minor fix though important enough (VMs can not run),
probably worth to target this to 3.6.3

Comment 6 Nir Soffer 2016-01-14 18:48:37 UTC
(In reply to Eric Blake from comment #3)
Thanks Eric, we decided to fix this (2 lines fix including the test) on our side.

I'll raise this issue in the libvirt list, mainly to understand how we can get
notifications for such changes before they are released.

Comment 7 Allon Mureinik 2016-01-14 19:55:55 UTC
(In reply to Maor from comment #5)
> It looks like a minor fix though important enough (VMs can not run),
> probably worth to target this to 3.6.3

This breaks current customers for 3.5.6 - We should backport this trivial patch to (oVirt) 3.6.3 and 3.5.8 assuming it doesn't break EL6 users.

Comment 8 Aharon Canan 2016-01-17 15:58:48 UTC
Reproduced with 
===============
rhevm-3.6.2.5-0.1.el6.noarch
vdsm-4.17.17-0.el7ev.noarch
libvirt-client-1.2.17-13.el7_2.2.x86_64

Steps to Reproduce:
===================
1. Assign a Direct Lun to a VM with interface "Virtio-SCSI" and "Enable SCSI Pass-Through".
2. Operation fails with "unsupported configuration: scsi-block 'lun' devices do not support the serial property"

Comment 10 Eyal Edri 2016-01-19 11:55:14 UTC
This bug contains only vdsm patches, but component is ovirt-engine,
please update the component or replace external trackers with engine.

Comment 12 Allon Mureinik 2016-01-19 15:14:41 UTC
(In reply to Eyal Edri from comment #10)
> This bug contains only vdsm patches, but component is ovirt-engine,
> please update the component or replace external trackers with engine.
Indeed, should be VDSM.
Thanks for noticing!

Comment 13 Aharon Canan 2016-01-21 09:23:37 UTC
Verified with 
===============
rhevm-3.6.2.6-0.1.el6.noarch
vdsm-4.17.18-0.el7ev.noarch
libvirt-client-1.2.17-13.el7_2.2.x86_64

Steps to Reproduce:
===================
1. Assign a Direct Lun to a VM with interface "Virtio-SCSI" and "Enable SCSI Pass-Through".
2. Operation fails with "unsupported configuration: scsi-block 'lun' devices do not support the serial property"

Comment 15 errata-xmlrpc 2016-03-09 19:46:31 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-0362.html