Bug 622340

Summary: Can't start libvirt guests with scsi or usb disks attached with "Parameter 'driver' expects a driver name"
Product: Red Hat Enterprise Linux 6 Reporter: Ryan Mitchell <rmitchel>
Component: libvirtAssignee: Daniel Veillard <veillard>
Status: CLOSED DUPLICATE QA Contact: Virtualization Bugs <virt-bugs>
Severity: medium Docs Contact:
Priority: low    
Version: 6.0CC: berrange, eblake, xen-maint
Target Milestone: rc   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2010-08-09 02:03:17 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
guest configuration file with scsi disk added that fails to boot. none

Description Ryan Mitchell 2010-08-09 01:54:13 UTC
Created attachment 437507 [details]
guest configuration file with scsi disk added that fails to boot.

Description of problem:
Get the following error message and traceback when I try to start a Red Hat Enterprise Linux 5 guest on RHEL6 KVM host if there is a scsi disk attached:

virsh output:
# virsh start rhel5guest
error: Failed to start domain rhel5guest
error: internal error Process exited while reading console log output: char device redirected to /dev/pts/2
qemu-kvm: -device lsi,id=scsi0,bus=pci.0,addr=0x7: Parameter 'driver' expects a driver name
Try with argument '?' for a list.

Virt-manager output:
Error starting domain: internal error Process exited while reading console log output: char device redirected to /dev/pts/2
qemu-kvm: -device lsi,id=scsi0,bus=pci.0,addr=0x7: Parameter 'driver' expects a driver name
Try with argument '?' for a list.

virt-manager captured traceback:
Traceback (most recent call last):
  File "/usr/share/virt-manager/virtManager/engine.py", line 878, in run_domain
    vm.startup()
  File "/usr/share/virt-manager/virtManager/domain.py", line 1313, in startup
    self._backend.create()
  File "/usr/lib64/python2.6/site-packages/libvirt.py", line 333, in create
    if ret == -1: raise libvirtError ('virDomainCreate() failed', dom=self)
libvirtError: internal error Process exited while reading console log output: char device redirected to /dev/pts/2
qemu-kvm: -device lsi,id=scsi0,bus=pci.0,addr=0x7: Parameter 'driver' expects a driver name
Try with argument '?' for a list.

The same occurs for usb-attached storage:
Error starting domain: internal error Process exited while reading console log output: char device redirected to /dev/pts/2
qemu-kvm: -device usb-storage,drive=drive-usb-disk0,id=usb-disk0: Parameter 'driver' expects a driver name
Try with argument '?' for a list.

Traceback (most recent call last):
  File "/usr/share/virt-manager/virtManager/engine.py", line 878, in run_domain
    vm.startup()
  File "/usr/share/virt-manager/virtManager/domain.py", line 1313, in startup
    self._backend.create()
  File "/usr/lib64/python2.6/site-packages/libvirt.py", line 333, in create
    if ret == -1: raise libvirtError ('virDomainCreate() failed', dom=self)
libvirtError: internal error Process exited while reading console log output: char device redirected to /dev/pts/2
qemu-kvm: -device usb-storage,drive=drive-usb-disk0,id=usb-disk0: Parameter 'driver' expects a driver name
Try with argument '?' for a list.

Version-Release number of selected component (if applicable):
RHEL6 nightly release RHEL6.0-20100807.n.0:
- kernel-2.6.32-59.1.el6.x86_64
- libvirt-0.8.1-21.el6.x86_64
- libvirt-client-0.8.1-21.el6.x86_64
- qemu-kvm-0.12.1.2-2.108.el6.x86_64
- virt-manager-0.8.4-7.el6.noarch

How reproducible:
- Reproduced on 2 separate systems.
- Very reproducible

This worked several releases ago.  Broke in approx the past 2 weeks.

Steps to Reproduce:
1. Install guest system on RHEL6 KVM.
2. Shut down guest system and attach new scsi storage using virt-manager GUI.  My particular disk is an 1GB LVM LV disk (created with lvcreate).  Set type to SCSI.
3. Try to start the virtual machine with either virsh or virt-manager.  Receive traceback.
4. Remove the SCSI disk from the host using virt-manager.  Try to restart the virtual machine which fails because the disk is removed, but the SCSI controller is still configured.
5. Manually edit /etc/libvirt/qemu/guest.xml to remove lines similar to:
    <controller type='scsi' index='0'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x0'/>
    </controller>
6. Restart libvirtd and now you can boot the virt machine again.


Actual results:
Traceback and virtual machine fails to start


Expected results:
System starts and SCSI-attached storage is available to use on boot.


Additional info:
This used to work a few builds back but stopped recently.  I believe it was working in the past 2 weeks but there has been at least 1 libvirt update since it broke.

Comment 1 Daniel Berrangé 2010-08-09 02:03:17 UTC
The support for SCSI has been removed from RHEL-6 KVM.

*** This bug has been marked as a duplicate of bug 621933 ***