Bug 1374544

Summary: '-device ivshmem' should be disabled in qemu as it's not supported
Product: Red Hat Enterprise Linux 7 Reporter: Pei Zhang <pezhang>
Component: qemu-kvm-rhevAssignee: Markus Armbruster <armbru>
Status: CLOSED NOTABUG QA Contact: Virtualization Bugs <virt-bugs>
Severity: low Docs Contact:
Priority: low    
Version: 7.3CC: knoel, virt-maint
Target Milestone: rcKeywords: Reopened
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-09-09 14:44:13 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:

Description Pei Zhang 2016-09-09 00:38:56 UTC
Description of problem:
As ivshmem has been replaced by ivshmem-plain and ivshmem-doorbell. And qemu doesn't support 'ivshmem', but still can query it. So the querying should be disabled in qemu, because it may confuse people.

Version-Release number of selected component (if applicable):
qemu-kvm-rhev-2.6.0-23.el7.x86_64


How reproducible:
100%

Steps to Reproduce:
1. qemu fails start with ivshmem
# /usr/libexec/qemu-kvm -m 4G -device ivshmem,size=4G,shm=shmem0
qemu-kvm: -device ivshmem,size=4G,shm=shmem0: Parameter 'driver' expects pluggable device type

qemu-kvm-rhev-2.3.0-31.el7_2.3.x86_64   support 
qemu-kvm-rhev-2.6.0-23.el7.x86_64       not support as above show

2. But qemu still shows it's supported. So this querying should be disabled. 
# /usr/libexec/qemu-kvm -device ivshmem,?
ivshmem.ioeventfd=bool (on/off)
ivshmem.rombar=uint32
ivshmem.x-pcie-lnksta-dllla=bool (on/off)
ivshmem.use64=uint32
ivshmem.shm=str
ivshmem.multifunction=bool (on/off)
ivshmem.msi=bool (on/off)
ivshmem.size=str
ivshmem.romfile=str
ivshmem.command_serr_enable=bool (on/off)
ivshmem.vectors=uint32
ivshmem.addr=int32 (Slot and optional function number, example: 06.0 or 06)
ivshmem.chardev=str (ID of a chardev to use as a backend)
ivshmem.role=str


Actual results:
qemu can still query it.

Expected results:
As it's actually not supported, so the querying of ivshmem should be disabled.

Additional info:

Comment 1 Pei Zhang 2016-09-09 00:54:27 UTC
Seems even some devices becomes not supported, it's still not disabled in qemu. So close this bug.

Sorry for the noise.


Best Regards,
-Pei

Comment 2 Pei Zhang 2016-09-09 01:11:39 UTC
(In reply to Pei Zhang from comment #1)
> Seems even some devices becomes not supported, it's still not disabled in
> qemu. So close this bug.
> 

It's not reasonable, please ignore it.

Comment 4 Ademar Reis 2016-09-09 13:58:53 UTC
My understanding is that this is not a problem as we don't support direct invocation of QEMU. Anyway, reassigning to Markus for validation.

Comment 5 Markus Armbruster 2016-09-09 14:44:13 UTC
We use various ways to disable unwanted device models.  One of them
marks them "no-user".  These cannot be used with -device.  "-device
help" and "device_add help" don't show them.  However, "info qdm"
still shows them, and "-device DEV-MODEL,help" / "device_add
DEV-MODEL,help" still works.  This is normal.