Bug 1172544 - ESX driver does not support scsi-passthru devices
Summary: ESX driver does not support scsi-passthru devices
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: libvirt
Version: 7.1
Hardware: Unspecified
OS: Unspecified
medium
medium
Target Milestone: rc
: ---
Assignee: Michal Privoznik
QA Contact: Virtualization Bugs
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2014-12-10 10:47 UTC by zhoujunqin
Modified: 2015-11-19 05:58 UTC (History)
6 users (show)

Fixed In Version: libvirt-1.2.17-9.el7
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2015-11-19 05:58:04 UTC
Target Upstream Version:


Attachments (Terms of Use)
vmx file get from esxi host (2.89 KB, text/plain)
2014-12-10 10:47 UTC, zhoujunqin
no flags Details


Links
System ID Private Priority Status Summary Last Updated
Red Hat Product Errata RHBA-2015:2202 0 normal SHIPPED_LIVE libvirt bug fix and enhancement update 2015-11-19 08:17:58 UTC

Description zhoujunqin 2014-12-10 10:47:22 UTC
Created attachment 966735 [details]
vmx file get from esxi host

Description of problem:
virsh cmd failed to dumpxml guest with SCSI device passthru

virsh # dumpxml esx-rhel6-mini-with-scsi-device
error: internal error: Invalid or not yet handled value '/vmfs/devices/cdrom/mpx.vmhba32:C0:T0:L0' for VMX entry 'scsi0:1.fileName' for device type 'scsi-passthru'

Version-Release number of selected component (if applicable):
libvirt-1.2.8-10.el7.x86_64
qemu-kvm-rhev-2.1.2-14.el7.x86_64

How reproducible:
100%

Steps to Reproduce:

Passthru a device from the ESX host to the ESX guest

1. Connect to the ESX server from vSphere client.

2. Choose a windows guest or a linux guest to do the passthru.

3. Choose "edit setting" for the specified guest.(eg use guest: esx-rhel6-mini-with-scsi-device)

4. Choose "Add" on the hardware tab, and choose a SCSI device to passthru.

5. After all this finished, use virsh to dump xml file.

# virsh -c vpx://root@10.66.111.25/tzheng-demo/10.66.4.153/?no_verify=1
Enter root's password for 10.66.111.25:
Welcome to virsh, the virtualization interactive terminal.

Type:  'help' for help with commands
       'quit' to quit

virsh # domstate esx-rhel6-mini-with-scsi-device
shut off

virsh # dumpxml esx-rhel6-mini-with-scsi-device
error: internal error: Invalid or not yet handled value '/vmfs/devices/cdrom/mpx.vmhba32:C0:T0:L0' for VMX entry 'scsi0:1.fileName' for device type 'scsi-passthru'


Actual results:
As step5.

Expected results:
Can dump guest xml file successfully.

Additional info:
I will attach esx-rhel6-mini.vmx.

Comment 3 Michal Privoznik 2015-08-28 09:40:37 UTC
Patch proposed upstream:

https://www.redhat.com/archives/libvir-list/2015-August/msg00970.html

Comment 6 zhoujunqin 2015-09-17 09:38:54 UTC
I can reproduce this issue with package:
libvirt-1.2.17-8.el7.x86_64

Then try to verify this bug with new build:
libvirt-1.2.17-9.el7.x86_64
libguestfs-1.28.1-1.55.el7.x86_64
virt-v2v-1.28.1-1.55.el7.x86_64
qemu-kvm-rhev-2.3.0-23.el7.x86_64

Steps:
Passthru a device from the ESX host to the ESX guest

1. Connect to the ESX server from vSphere client.

2. Choose a windows guest or a linux guest to do the passthru.

3. Choose "edit setting" for the specified guest.(eg use guest: esx-rhel6-mini-with-scsi-device)

4. Choose "Add" on the hardware tab, and choose a SCSI device to passthru.

5. After all this finished, use virsh to dump xml file.
# virsh -c vpx://root@10.66.4.103/tzheng-demo/10.66.4.153/?no_verify=1  dumpxml esx-rhel6-mini-with-scsi-device 
Enter root's password for 10.66.4.103: 
<domain type='vmware'>
  <name>esx-rhel6-mini-with-scsi-device</name>
  <uuid>564d9176-621f-0239-f5ad-3a002371953b</uuid>
  <memory unit='KiB'>2097152</memory>
  <currentMemory unit='KiB'>2097152</currentMemory>
  <vcpu placement='static'>1</vcpu>
  <os>
    <type arch='x86_64'>hvm</type>
  </os>
  <clock offset='utc'/>
  <on_poweroff>destroy</on_poweroff>
  <on_reboot>restart</on_reboot>
  <on_crash>destroy</on_crash>
  <devices>
    <disk type='file' device='disk'>
      <source file='[datastore1 (1)] esx-rhel6-mini/esx-rhel6-mini.vmdk'/>
      <target dev='sda' bus='scsi'/>
      <address type='drive' controller='0' bus='0' target='0' unit='0'/>
    </disk>
    <disk type='block' device='lun'>
      <source dev='/vmfs/devices/cdrom/mpx.vmhba32:C0:T0:L0'/>
      <target dev='sdb' bus='scsi'/>
      <address type='drive' controller='0' bus='0' target='0' unit='1'/>
    </disk>
    <controller type='scsi' index='0' model='vmpvscsi'/>
    <interface type='bridge'>
      <mac address='00:50:56:9f:08:51'/>
      <source bridge='VM Network'/>
      <model type='vmxnet3'/>
    </interface>
    <video>
      <model type='vmvga' vram='8192'/>
    </video>
  </devices>
</domain>


Since virsh command works well, move this bug from ON_QA to VERIFIED.

Comment 8 errata-xmlrpc 2015-11-19 05:58:04 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-2202.html


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