qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* Re: [Qemu-devel] [EXTERNAL] Re: how to dynamically add a block device using qmp?
@ 2014-10-13 21:08 Ken Chiang
  2014-10-14 19:20 ` Benoît Canet
  0 siblings, 1 reply; 3+ messages in thread
From: Ken Chiang @ 2014-10-13 21:08 UTC (permalink / raw)
  To: qemu-devel

[-- Attachment #1: Type: text/plain, Size: 645 bytes --]

I also tried to add a virt io device to the frontend but still no disc in the VM.  Am I missing anything else?


{"QMP": {"version": {"qemu": {"micro": 0, "minor": 0, "major": 2}, "package": " (Debian 2.0.0+dfsg-2ubuntu1.2)"}, "capabilities": []}}
{"execute":"qmp_capabilities"}
{"return": {}}
{ "execute": "blockdev-add",
   "arguments": { "options" : {
        "id": "tc1",
        "driver": "qcow2",
        "file": { "driver": "file",
            "filename": "test.qc2" } } } }

{"return": {}}
    { "execute": "device_add", "arguments": {
        "driver": "virtio-blk-pci", "id": "vda", "drive": "tc1"  } }
{"return": {}}

Thanks!

Ken




[-- Attachment #2: Type: message/rfc822, Size: 5283 bytes --]

From: Ken Chiang <kchiang@sandia.gov>
To: Markus Armbruster <armbru@redhat.com>
Subject: Re: [EXTERNAL] Re: [Qemu-devel] how to dynamically add a block device using qmp?
Date: Mon, 13 Oct 2014 12:28:51 -0700
Message-ID: <20141013192851.GA12699@sandia.gov>

Markus,

Nevermind my previous question, I see now that you add a scsi bus prior to adding the scsi disk.  

However, I did this and qmp returned {[]} in both cases and I am still not seeing the disk in the vm.


here's the qmp session:

{"execute":"qmp_capabilities"}
{"return": {}}
{ "execute": "blockdev-add",                                                    
   "arguments": { "options" : {                                                 
        "id": "tc1",                                                            
        "driver": "qcow2",                                                      
        "file": { "driver": "file",                                             
            "filename": "/home/kchiang/kvmimages/xpsp2_b-02222012.qc2" } } } } 
{"return": {}}
    { "execute": "device_add", "arguments": {
        "driver": "virtio-scsi-pci", "id": "vs-hba" } }
{"return": {}}
    { "execute": "device_add", "arguments": {
        "driver": "scsi-disk", "id": "sdb", "drive": "tc1",
        "bus": "vs-hba.0"  } }
{"return": {}}
{ "execute": "query-block" }
{"return": [{"io-status": "ok", "device": "ide0-hd0", "locked": false, "removable": false, "inserted": {"iops_rd": 0, "image": {"virtual-size": 5999951872, "filename": "kvmimages/vts-6g-u12-inetsim.image", "format": "raw", "actual-size": 5999955968, "dirty-flag": false}, "iops_wr": 0, "ro": false, "backing_file_depth": 0, "drv": "raw", "iops": 0, "bps_wr": 0, "encrypted": false, "bps": 0, "bps_rd": 0, "file": "kvmimages/vts-6g-u12-inetsim.image", "encryption_key_missing": false}, "type": "unknown"}, {"io-status": "ok", "device": "ide1-cd0", "locked": false, "removable": true, "tray_open": false, "type": "unknown"}, {"device": "floppy0", "locked": false, "removable": true, "tray_open": false, "type": "unknown"}, {"device": "sd0", "locked": false, "removable": true, "tray_open": false, "type": "unknown"}, {"io-status": "ok", "device": "tc1", "locked": false, "removable": false, "inserted": {"iops_rd": 0, "image": {"virtual-size": 5368709120, "filename": "/home/kchiang/kvmimages/xpsp2_b-02222012.qc2", "cluster-size": 65536, "format": "qcow2", "actual-size": 1550454784, "format-specific": {"type": "qcow2", "data": {"compat": "0.10"}}, "dirty-flag": false}, "iops_wr": 0, "ro": false, "backing_file_depth": 0, "drv": "qcow2", "iops": 0, "bps_wr": 0, "encrypted": false, "bps": 0, "bps_rd": 0, "file": "/home/kchiang/kvmimages/xpsp2_b-02222012.qc2", "encryption_key_missing": false}, "type": "unknown"}]}

am I missing anything else?

I've also tried rebooting the VM and running rescan-scsi-bus to no avail.

Ken

On Sat, Oct 11, 2014 at 10:58:59AM +0200, Markus Armbruster wrote:
> Ken Chiang <kchiang@sandia.gov> writes:
> 
> > Hello,
> >
> > I am trying to add a block device dynamically using qmp and are having
> > some issues.
> >
> > After successfully adding the block device using "blockdev-add" and
> > verifying that it has been added using "query-block", I am unable to
> > see the block device in the VM under /dev/sdXX
> 
> Block devices consist of a frontend (a.k.a. device model) and a backend.
> You added only a backend.  To add the frontend, use device_add.
> 
> > I am using ubuntu14.04LTS: qmp version: 
> > {"QMP": {"version": {"qemu": {"micro": 0, "minor": 0, "major": 2}, "package": " (Debian 2.0.0+dfsg-2ubuntu1.2)"}, "capabilities": []}}
> >
> > Here's what I am doing:
> > 1.  /usr/bin/kvm-spice -hda kvmimages/ubuntu.image -m 768 -usbdevice tablet -vnc :5 -qmp tcp:localhost:4444,server,nowait
> >
> > 2.  telnet localhost 4444
> >
> > 3.  In the telnet session run:
> > {"execute":"qmp_capabilities"}
> > {"return": {}}
> > { "execute": "blockdev-add",
> >    "arguments": { "options" : {
> >         "id": "disk1",
> >         "driver": "qcow2",
> > 	"file": { "driver": "file",
> >             "filename": "testvm.qc2" } } } }
> > {"return": {}}
> >
> > { "execute": "query-block" }
> >
> > 4. query-block returns the device "disk1", but when I check the vm:
> >    # vncviewer :5
> >    
> > there are no new devices.
> 
> For a virtio-blk disk, try:
> 
>     { "execute": "device_add", "arguments": {
>         "driver": "virtio-blk-pci", "id": "vda", "drive": "disk1"  } }
> 
> For a SCSI disk, try:
> 
>     { "execute": "device_add", "arguments": {
>         "driver": "virtio-scsi-pci", "id": "vs-hba" } }
>     { "execute": "device_add", "arguments": {
>         "driver": "scsi-disk", "id": "sda", "drive": "disk1",
>         "bus": "vs-hba.0"  } }
> 
> [...]

-- 
Ken Chiang
Information Assurance
Sandia National Labs - CA
925-294-2018

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [Qemu-devel] [EXTERNAL] Re: how to dynamically add a block device using qmp?
  2014-10-13 21:08 [Qemu-devel] [EXTERNAL] Re: how to dynamically add a block device using qmp? Ken Chiang
@ 2014-10-14 19:20 ` Benoît Canet
  2014-10-14 22:29   ` Chiang, Ken
  0 siblings, 1 reply; 3+ messages in thread
From: Benoît Canet @ 2014-10-14 19:20 UTC (permalink / raw)
  To: Ken Chiang; +Cc: qemu-devel

The Monday 13 Oct 2014 à 14:08:18 (-0700), Ken Chiang wrote :
> I also tried to add a virt io device to the frontend but still no disc in the VM.  Am I missing anything else?
> 
> 
> {"QMP": {"version": {"qemu": {"micro": 0, "minor": 0, "major": 2}, "package": " (Debian 2.0.0+dfsg-2ubuntu1.2)"}, "capabilities": []}}
> {"execute":"qmp_capabilities"}
> {"return": {}}
> { "execute": "blockdev-add",
>    "arguments": { "options" : {
>         "id": "tc1",
>         "driver": "qcow2",
>         "file": { "driver": "file",
>             "filename": "test.qc2" } } } }
> 
> {"return": {}}
>     { "execute": "device_add", "arguments": {
>         "driver": "virtio-blk-pci", "id": "vda", "drive": "tc1"  } }
> {"return": {}}
> 
> Thanks!

Maybe try
for m in acpiphp pci_hotplug; do sudo modprobe ${m}; done
in the guest before adding the pci device.

Best regards

Benoît

> 
> Ken
> 
> 
> 

> Date: Mon, 13 Oct 2014 12:28:51 -0700
> From: Ken Chiang <kchiang@sandia.gov>
> To: Markus Armbruster <armbru@redhat.com>
> Subject: Re: [EXTERNAL] Re: [Qemu-devel] how to dynamically add a block
>  device using qmp?
> Message-ID: <20141013192851.GA12699@sandia.gov>
> In-Reply-To: <87k347f0do.fsf@blackfin.pond.sub.org>
> User-Agent: Mutt/1.5.18 (2008-05-17)
> 
> Markus,
> 
> Nevermind my previous question, I see now that you add a scsi bus prior to adding the scsi disk.  
> 
> However, I did this and qmp returned {[]} in both cases and I am still not seeing the disk in the vm.
> 
> 
> here's the qmp session:
> 
> {"execute":"qmp_capabilities"}
> {"return": {}}
> { "execute": "blockdev-add",                                                    
>    "arguments": { "options" : {                                                 
>         "id": "tc1",                                                            
>         "driver": "qcow2",                                                      
>         "file": { "driver": "file",                                             
>             "filename": "/home/kchiang/kvmimages/xpsp2_b-02222012.qc2" } } } } 
> {"return": {}}
>     { "execute": "device_add", "arguments": {
>         "driver": "virtio-scsi-pci", "id": "vs-hba" } }
> {"return": {}}
>     { "execute": "device_add", "arguments": {
>         "driver": "scsi-disk", "id": "sdb", "drive": "tc1",
>         "bus": "vs-hba.0"  } }
> {"return": {}}
> { "execute": "query-block" }
> {"return": [{"io-status": "ok", "device": "ide0-hd0", "locked": false, "removable": false, "inserted": {"iops_rd": 0, "image": {"virtual-size": 5999951872, "filename": "kvmimages/vts-6g-u12-inetsim.image", "format": "raw", "actual-size": 5999955968, "dirty-flag": false}, "iops_wr": 0, "ro": false, "backing_file_depth": 0, "drv": "raw", "iops": 0, "bps_wr": 0, "encrypted": false, "bps": 0, "bps_rd": 0, "file": "kvmimages/vts-6g-u12-inetsim.image", "encryption_key_missing": false}, "type": "unknown"}, {"io-status": "ok", "device": "ide1-cd0", "locked": false, "removable": true, "tray_open": false, "type": "unknown"}, {"device": "floppy0", "locked": false, "removable": true, "tray_open": false, "type": "unknown"}, {"device": "sd0", "locked": false, "removable": true, "tray_open": false, "type": "unknown"}, {"io-status": "ok", "device": "tc1", "locked": false, "removable": false, "inserted": {"iops_rd": 0, "image": {"virtual-size": 5368709120, "filename": "/home/kchiang/kvmimages/xpsp2_b-02222012.qc2", "cluster-size": 65536, "format": "qcow2", "actual-size": 1550454784, "format-specific": {"type": "qcow2", "data": {"compat": "0.10"}}, "dirty-flag": false}, "iops_wr": 0, "ro": false, "backing_file_depth": 0, "drv": "qcow2", "iops": 0, "bps_wr": 0, "encrypted": false, "bps": 0, "bps_rd": 0, "file": "/home/kchiang/kvmimages/xpsp2_b-02222012.qc2", "encryption_key_missing": false}, "type": "unknown"}]}
> 
> am I missing anything else?
> 
> I've also tried rebooting the VM and running rescan-scsi-bus to no avail.
> 
> Ken
> 
> On Sat, Oct 11, 2014 at 10:58:59AM +0200, Markus Armbruster wrote:
> > Ken Chiang <kchiang@sandia.gov> writes:
> > 
> > > Hello,
> > >
> > > I am trying to add a block device dynamically using qmp and are having
> > > some issues.
> > >
> > > After successfully adding the block device using "blockdev-add" and
> > > verifying that it has been added using "query-block", I am unable to
> > > see the block device in the VM under /dev/sdXX
> > 
> > Block devices consist of a frontend (a.k.a. device model) and a backend.
> > You added only a backend.  To add the frontend, use device_add.
> > 
> > > I am using ubuntu14.04LTS: qmp version: 
> > > {"QMP": {"version": {"qemu": {"micro": 0, "minor": 0, "major": 2}, "package": " (Debian 2.0.0+dfsg-2ubuntu1.2)"}, "capabilities": []}}
> > >
> > > Here's what I am doing:
> > > 1.  /usr/bin/kvm-spice -hda kvmimages/ubuntu.image -m 768 -usbdevice tablet -vnc :5 -qmp tcp:localhost:4444,server,nowait
> > >
> > > 2.  telnet localhost 4444
> > >
> > > 3.  In the telnet session run:
> > > {"execute":"qmp_capabilities"}
> > > {"return": {}}
> > > { "execute": "blockdev-add",
> > >    "arguments": { "options" : {
> > >         "id": "disk1",
> > >         "driver": "qcow2",
> > > 	"file": { "driver": "file",
> > >             "filename": "testvm.qc2" } } } }
> > > {"return": {}}
> > >
> > > { "execute": "query-block" }
> > >
> > > 4. query-block returns the device "disk1", but when I check the vm:
> > >    # vncviewer :5
> > >    
> > > there are no new devices.
> > 
> > For a virtio-blk disk, try:
> > 
> >     { "execute": "device_add", "arguments": {
> >         "driver": "virtio-blk-pci", "id": "vda", "drive": "disk1"  } }
> > 
> > For a SCSI disk, try:
> > 
> >     { "execute": "device_add", "arguments": {
> >         "driver": "virtio-scsi-pci", "id": "vs-hba" } }
> >     { "execute": "device_add", "arguments": {
> >         "driver": "scsi-disk", "id": "sda", "drive": "disk1",
> >         "bus": "vs-hba.0"  } }
> > 
> > [...]
> 
> -- 
> Ken Chiang
> Information Assurance
> Sandia National Labs - CA
> 925-294-2018

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [Qemu-devel] [EXTERNAL] Re: how to dynamically add a block device using qmp?
  2014-10-14 19:20 ` Benoît Canet
@ 2014-10-14 22:29   ` Chiang, Ken
  0 siblings, 0 replies; 3+ messages in thread
From: Chiang, Ken @ 2014-10-14 22:29 UTC (permalink / raw)
  To: Benoît Canet; +Cc: qemu-devel@nongnu.org


Thanks!  That did it!

-----Original Message-----
From: Benoît Canet [mailto:benoit.canet@irqsave.net] 
Sent: Tuesday, October 14, 2014 12:20 PM
To: Chiang, Ken
Cc: qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [EXTERNAL] Re: how to dynamically add a block device using qmp?

The Monday 13 Oct 2014 à 14:08:18 (-0700), Ken Chiang wrote :
> I also tried to add a virt io device to the frontend but still no disc in the VM.  Am I missing anything else?
> 
> 
> {"QMP": {"version": {"qemu": {"micro": 0, "minor": 0, "major": 2}, 
> "package": " (Debian 2.0.0+dfsg-2ubuntu1.2)"}, "capabilities": []}} 
> {"execute":"qmp_capabilities"}
> {"return": {}}
> { "execute": "blockdev-add",
>    "arguments": { "options" : {
>         "id": "tc1",
>         "driver": "qcow2",
>         "file": { "driver": "file",
>             "filename": "test.qc2" } } } }
> 
> {"return": {}}
>     { "execute": "device_add", "arguments": {
>         "driver": "virtio-blk-pci", "id": "vda", "drive": "tc1"  } }
> {"return": {}}
> 
> Thanks!

Maybe try
for m in acpiphp pci_hotplug; do sudo modprobe ${m}; done in the guest before adding the pci device.

Best regards

Benoît

> 
> Ken
> 
> 
> 

> Date: Mon, 13 Oct 2014 12:28:51 -0700
> From: Ken Chiang <kchiang@sandia.gov>
> To: Markus Armbruster <armbru@redhat.com>
> Subject: Re: [EXTERNAL] Re: [Qemu-devel] how to dynamically add a 
> block  device using qmp?
> Message-ID: <20141013192851.GA12699@sandia.gov>
> In-Reply-To: <87k347f0do.fsf@blackfin.pond.sub.org>
> User-Agent: Mutt/1.5.18 (2008-05-17)
> 
> Markus,
> 
> Nevermind my previous question, I see now that you add a scsi bus prior to adding the scsi disk.  
> 
> However, I did this and qmp returned {[]} in both cases and I am still not seeing the disk in the vm.
> 
> 
> here's the qmp session:
> 
> {"execute":"qmp_capabilities"}
> {"return": {}}
> { "execute": "blockdev-add",                                                    
>    "arguments": { "options" : {                                                 
>         "id": "tc1",                                                            
>         "driver": "qcow2",                                                      
>         "file": { "driver": "file",                                             
>             "filename": "/home/kchiang/kvmimages/xpsp2_b-02222012.qc2" 
> } } } }
> {"return": {}}
>     { "execute": "device_add", "arguments": {
>         "driver": "virtio-scsi-pci", "id": "vs-hba" } }
> {"return": {}}
>     { "execute": "device_add", "arguments": {
>         "driver": "scsi-disk", "id": "sdb", "drive": "tc1",
>         "bus": "vs-hba.0"  } }
> {"return": {}}
> { "execute": "query-block" }
> {"return": [{"io-status": "ok", "device": "ide0-hd0", "locked": false, 
> "removable": false, "inserted": {"iops_rd": 0, "image": 
> {"virtual-size": 5999951872, "filename": 
> "kvmimages/vts-6g-u12-inetsim.image", "format": "raw", "actual-size": 
> 5999955968, "dirty-flag": false}, "iops_wr": 0, "ro": false, 
> "backing_file_depth": 0, "drv": "raw", "iops": 0, "bps_wr": 0, 
> "encrypted": false, "bps": 0, "bps_rd": 0, "file": 
> "kvmimages/vts-6g-u12-inetsim.image", "encryption_key_missing": 
> false}, "type": "unknown"}, {"io-status": "ok", "device": "ide1-cd0", 
> "locked": false, "removable": true, "tray_open": false, "type": 
> "unknown"}, {"device": "floppy0", "locked": false, "removable": true, 
> "tray_open": false, "type": "unknown"}, {"device": "sd0", "locked": 
> false, "removable": true, "tray_open": false, "type": "unknown"}, 
> {"io-status": "ok", "device": "tc1", "locked": false, "removable": 
> false, "inserted": {"iops_rd": 0, "image": {"virtual-size": 
> 5368709120, "filename": 
> "/home/kchiang/kvmimages/xpsp2_b-02222012.qc2", "cluster-size": 65536, 
> "format": "qcow2", "actual-size": 1550454784, "format-specific": 
> {"type": "qcow2", "data": {"compat": "0.10"}}, "dirty-flag": false}, 
> "iops_wr": 0, "ro": false, "backing_file_depth": 0, "drv": "qcow2", 
> "iops": 0, "bps_wr": 0, "encrypted": false, "bps": 0, "bps_rd": 0, 
> "file": "/home/kchiang/kvmimages/xpsp2_b-02222012.qc2", 
> "encryption_key_missing": false}, "type": "unknown"}]}
> 
> am I missing anything else?
> 
> I've also tried rebooting the VM and running rescan-scsi-bus to no avail.
> 
> Ken
> 
> On Sat, Oct 11, 2014 at 10:58:59AM +0200, Markus Armbruster wrote:
> > Ken Chiang <kchiang@sandia.gov> writes:
> > 
> > > Hello,
> > >
> > > I am trying to add a block device dynamically using qmp and are 
> > > having some issues.
> > >
> > > After successfully adding the block device using "blockdev-add" 
> > > and verifying that it has been added using "query-block", I am 
> > > unable to see the block device in the VM under /dev/sdXX
> > 
> > Block devices consist of a frontend (a.k.a. device model) and a backend.
> > You added only a backend.  To add the frontend, use device_add.
> > 
> > > I am using ubuntu14.04LTS: qmp version: 
> > > {"QMP": {"version": {"qemu": {"micro": 0, "minor": 0, "major": 2}, 
> > > "package": " (Debian 2.0.0+dfsg-2ubuntu1.2)"}, "capabilities": 
> > > []}}
> > >
> > > Here's what I am doing:
> > > 1.  /usr/bin/kvm-spice -hda kvmimages/ubuntu.image -m 768 
> > > -usbdevice tablet -vnc :5 -qmp tcp:localhost:4444,server,nowait
> > >
> > > 2.  telnet localhost 4444
> > >
> > > 3.  In the telnet session run:
> > > {"execute":"qmp_capabilities"}
> > > {"return": {}}
> > > { "execute": "blockdev-add",
> > >    "arguments": { "options" : {
> > >         "id": "disk1",
> > >         "driver": "qcow2",
> > > 	"file": { "driver": "file",
> > >             "filename": "testvm.qc2" } } } }
> > > {"return": {}}
> > >
> > > { "execute": "query-block" }
> > >
> > > 4. query-block returns the device "disk1", but when I check the vm:
> > >    # vncviewer :5
> > >    
> > > there are no new devices.
> > 
> > For a virtio-blk disk, try:
> > 
> >     { "execute": "device_add", "arguments": {
> >         "driver": "virtio-blk-pci", "id": "vda", "drive": "disk1"  } 
> > }
> > 
> > For a SCSI disk, try:
> > 
> >     { "execute": "device_add", "arguments": {
> >         "driver": "virtio-scsi-pci", "id": "vs-hba" } }
> >     { "execute": "device_add", "arguments": {
> >         "driver": "scsi-disk", "id": "sda", "drive": "disk1",
> >         "bus": "vs-hba.0"  } }
> > 
> > [...]
> 
> --
> Ken Chiang
> Information Assurance
> Sandia National Labs - CA
> 925-294-2018

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2014-10-14 22:30 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-10-13 21:08 [Qemu-devel] [EXTERNAL] Re: how to dynamically add a block device using qmp? Ken Chiang
2014-10-14 19:20 ` Benoît Canet
2014-10-14 22:29   ` Chiang, Ken

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).