Bug 719670

Summary: Unable to add a detachable device
Product: Red Hat Enterprise Linux 6 Reporter: Dmitry Konishchev <konishchev>
Component: qemu-kvmAssignee: Virtualization Maintenance <virt-maint>
Status: CLOSED NOTABUG QA Contact: Virtualization Bugs <virt-bugs>
Severity: high Docs Contact:
Priority: unspecified    
Version: 6.1CC: ddutile, juzhang, mkenneth, virt-maint
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2011-07-08 18:57:52 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:

Description Dmitry Konishchev 2011-07-07 15:59:50 UTC
I run a virtual machine by executing the following command:
/usr/libexec/qemu-kvm -drive id=root_drive,file=root,if=ide,media=disk -drive id=volume_drive,file=volume,if=virtio,media=disk -device virtio-blk-pci,drive=volume_drive,id=volume

On RHEL 6.0 with qemu-kvm-0.12.1.2-2.113.el6_0.8 it works fine, but on RHEL 6.1 with qemu-kvm-0.12.1.2-2.160.el6 it fails with the following output:
qemu-kvm: -drive id=volume_drive,file=volume,if=virtio,media=disk: Property 'virtio-blk-pci.drive' can't take value 'volume_drive', it's in use

Am I misunderstanding something or device attaching is really broken?

Comment 2 juzhang 2011-07-08 02:12:58 UTC
(In reply to comment #0)
> I run a virtual machine by executing the following command:
> /usr/libexec/qemu-kvm -drive id=root_drive,file=root,if=ide,media=disk -drive
> id=volume_drive,file=volume,if=virtio,media=disk -device
> virtio-blk-pci,drive=volume_drive,id=volume
> 
> On RHEL 6.0 with qemu-kvm-0.12.1.2-2.113.el6_0.8 it works fine, but on RHEL 6.1
> with qemu-kvm-0.12.1.2-2.160.el6 it fails with the following output:
> qemu-kvm: -drive id=volume_drive,file=volume,if=virtio,media=disk: Property
> 'virtio-blk-pci.drive' can't take value 'volume_drive', it's in use
> 
> Am I misunderstanding something or device attaching is really broken?

You CML probably wrong
you can't define interface two times
-drive id=volume_drive,file=volume,*if=virtio*,media=disk /first time/
-device virtio-blk-pci,drive=volume_drive,id=volume /second time/

Would you please try the following two methods
1.Use -drive&-device

/usr/libexec/qemu-kvm 

-drive id=root_drive,file=root,if=none,media=disk 
-device ide-drive,drive=root_drive

-drive id=volume_drive,file=volume,if=none,media=disk 
-device virtio-blk-pci,drive=volume_drive,id=volume


2.Just use -drive option
#/usr/libexec/qemu-kvm -drive id=root_drive,file=root,if=ide,media=disk -drive
id=volume_drive,file=volume,if=virtio,media=disk 

-drive
file=/root/zhangjunyi/rhel5.6-virtio-64.qcow2,if=none,id=test,cache=none,format=qcow2,werror=stop,rerror=stop
-device virtio-blk-pci,drive=test

Comment 3 Dmitry Konishchev 2011-07-08 09:56:02 UTC
Yeah, with if=none it works great. Thanks!