Bug 621933 - KVM is not reporting missing support for SCSI
KVM is not reporting missing support for SCSI
Status: CLOSED WONTFIX
Product: Red Hat Enterprise Linux 6
Classification: Red Hat
Component: qemu-kvm (Show other bugs)
6.0
All Linux
low Severity medium
: beta
: ---
Assigned To: Markus Armbruster
Virtualization Bugs
:
: 622340 623079 649305 (view as bug list)
Depends On:
Blocks: 580953 727766
  Show dependency treegraph
 
Reported: 2010-08-06 10:29 EDT by Alexander Todorov
Modified: 2013-01-09 17:59 EST (History)
12 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
: 727766 (view as bug list)
Environment:
Last Closed: 2010-11-18 09:01:46 EST
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Alexander Todorov 2010-08-06 10:29:20 EDT
Description of problem:

I get the below traceback when trying to create a new guest with 3 disk images.

Traceback (most recent call last):
  File "/usr/share/virt-manager/virtManager/create.py", line 1561, in do_install
    dom = guest.start_install(False, meter = meter)
  File "/usr/lib/python2.6/site-packages/virtinst/Guest.py", line 973, in start_install
    return self._do_install(consolecb, meter, removeOld, wait)
  File "/usr/lib/python2.6/site-packages/virtinst/Guest.py", line 1038, in _do_install
    "install")
  File "/usr/lib/python2.6/site-packages/virtinst/Guest.py", line 1009, in _create_guest
    dom = self.conn.createLinux(start_xml, 0)
  File "/usr/lib64/python2.6/site-packages/libvirt.py", line 1270, in createLinux
    if ret is None:raise libvirtError('virDomainCreateLinux() failed', conn=self)
libvirtError: internal error Process exited while reading console log output: char device redirected to /dev/pts/1
qemu-kvm: -device lsi,id=scsi0,bus=pci.0,addr=0x5: Parameter 'driver' expects a driver name
Try with argument '?' for a list.

Version-Release number of selected component (if applicable):
libvirt-0.8.1-20.el6.x86_64
kernel-2.6.32-54.el6.x86_64
virt-manager-0.8.4-7.el6.noarch
qemu-kvm-0.12.1.2-2.104.el6.x86_64

RHEL6 snap #0 (0805.0)

How reproducible:
Always

Steps to Reproduce:
1. Using virt-manager create a new guest and assign standard 8GB virtio disk
2. Select to customize the guest before install
3. Add additional storage: 1st - 10GB image as IDE disk, 2nd 1GB image as SCSI disk
  
Actual results:
The above traceback. Guest not created.

Expected results:
Guests starts installing.

Additional info:
libvirt error message from /var/log/messages is pretty much the same as in the traceback:

libvirtd: 10:21:34.402: error : qemudReadLogOutput:2313 : internal error Process exited while reading console log output: char device redirected to /dev/pts/1#012qemu-kvm: -device lsi,id=scsi0,bus=pci.0,addr=0x5: Parameter 'driver' expects a driver name#012Try with argument '?' for a list.#012
Comment 1 Daniel Berrange 2010-08-06 10:47:48 EDT
This is a QEMU bug. It appears latest builds have removed support for SCSI, but the way this is reported when launching a guest with SCSI is horribly misleading making it look like a syntax error in the command line.

# qemu-system-x86_64: -device lsi,id=scsi0,bus=pci.0,addr=0x5: Parameter 'driver' expects a driver name

Should say something along the lines of

# qemu-system-x86_64: -device lsi,id=scsi0,bus=pci.0,addr=0x5: No support for driver name 'lsi'
Comment 2 Daniel Berrange 2010-08-08 22:03:17 EDT
*** Bug 622340 has been marked as a duplicate of this bug. ***
Comment 3 Daniel Berrange 2010-08-11 09:48:38 EDT
*** Bug 623079 has been marked as a duplicate of this bug. ***
Comment 4 Rodrigo A B Freire 2010-11-03 10:19:33 EDT
*** Bug 649305 has been marked as a duplicate of this bug. ***
Comment 5 Markus Armbruster 2010-11-17 09:37:57 EST
I think we have two separate bugs here.

One is that QEMU's error message is too unspecific.  That's indeed a qemu-kvm bug.

The other is that libvirt doesn't handle the "driver not available" error, and throws an internal error instead (traceback and all).

If libvirt discovered available drivers, not checking for a "driver unavailable" error could be excused, because then the error *is* an internal error.  But since it doesn't discover them, I think it should check for and handle "driver unavailable".

Libvirt not discovering available drivers is a conscious decision. Feature discovery it is rather brittle with current QEMU, because QEMU still lacks sensible discovery interfaces.  Therefore, discovery should be used as sparingly as practical.

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