Hello John,

Thanks. Yes, typo when I wrote the e-mail.

It might be possible that XEN does that (I will ask in the XEN forum).
However, I have noticed that it is not the case for all of the VMs I have
launched. In some of them I can query the block devices even after a long
time the VM has been running.

I was wondering if the device is removed in case the disk is corrupted or
something. When I mention it runs normally, I can log into ithe VM and
perform read/write operations such creating files.

Also, is there an easy way to log all qemu events so that I can see what
might be going on with the 'ide' device?

Thanks,

Bruno

On Thu, May 25, 2017 at 11:18 AM, John Snow <js...@redhat.com> wrote:

>
>
> On 05/25/2017 12:27 AM, Bruno Alvisio wrote:
> > Hello all,
> >
> > Summary
> >
> > I am using XEN hypervisor to run a HVM with a QEMU backed disk. After I
> > start the HVM I use QMP "query-block" command to see the devices of the
> VM.
> > Initially the command returns the disk that I set as part of the
> > configuration. After a few seconds the a DEVICE_DELETE event occurs (for
> > device nic0) and after that the "query-block" command returns an empty
> > result.
> >
> > QEMU Version: 4.6.5
>
> I assume this is the KVM version.
>
> > Arch: x86-64
> > QMP : 2.2.1
>
> And I assume this is the QEMU version.
>
> >
> > Note:
> > 1. I was not performing any activity on the VM when the event occurs.
> > 2. After the event, the QEMU process is still alive and the VM runs
> > normally.
> > 3. This behavior is consistently reproduced.
> >
> >
> > Any help on how can I debug this issue would be greatly appreciated .
> >
> > Thanks,
> >
> > Bruno
> >
>
> I'm not very familiar with XEN, I do know that it likes to add more
> devices than it needs and then deletes them before starting the VM
> proper. The VM actually still runs normally despite the fact that query
> block returns no information? ...
>
> CCing qemu-block.
>
> --js
>
> >
> >
> > DETAILED LOGS
> >
> > I am using XEN hypervisor to run a HVM with QEMU backed disk. When I
> start
> > the HVM I see the following QEMU process started:
> >
> > root      2199     1  0 18:57 ?        00:00:02
> > /usr/local/lib/xen/bin/qemu-system-i386
> > -xen-domid 3 -chardev socket,id=libxl-cmd,path=/var/
> > run/xen/qmp-libxl-3,server,nowait -no-shutdown -mon
> > chardev=libxl-cmd,mode=control -chardev socket,id=libxenstat-cmd,path=
> > /var/run/xen/qmp-libxenstat-3,server,nowait -mon
> > chardev=libxenstat-cmd,mode=control -nodefaults -no-user-config -name
> > debianL2 -vnc :0,to=99 -display none -serial pty -device
> > cirrus-vga,vgamem_mb=8 -boot order=d -device
> > rtl8139,id=nic0,netdev=net0,mac=00:16:3e:1b:d0:7e
> > -netdev type=tap,id=net0,ifname=vif3.0-emu,script=no,downscript=no
> -machine
> > xenfv -m 1016 -drive file=/home/balvisio/debian-
> > disk.img,if=ide,index=0,media=disk,format=raw,cache=writeback -drive
> > if=ide,index=2,readonly=on,media=cdrom,id=ide-5632,file=/
> > home/balvisio/debian-live-8.7.1-amd64-gnome-desktop.iso,format=raw
> >
> > After launching the VM, I connected to the QMP socket:
> >
> > # rlwrap -C qmp socat STDIO UNIX:/var/run/xen/qmp-libxl-2
> >
> > {"QMP": {"version": {"qemu": {"micro": 1, "minor": 2, "major": 2},
> > "package": ""}, "capabilities": []}}
> >
> > {"execute":"qmp_capabilities"}
> >
> > {"return": {}}
> >
> > I issue the "query-block" command and I get:
> >
> > {"execute":"query-block"}
> >
> > {"return": [{"io-status": "ok", "device": "ide0-hd0", "locked": false,
> > "removable": false, "inserted": {"iops_rd": 0, "detect_zeroes": "off",
> > "image": {"virtual-size": 10737418240, "filename":
> > "/home/balvisio/debian-disk.img", "format": "raw", "actual-size":
> > 4940075008, "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": "/home/balvisio/debian-disk.img",
> > "encryption_key_missing": false}, "type": "unknown"}]}
> >
> >
> >
> > After a few seconds, the following event happens asynchronoausly:
> >
> > {"timestamp": {"seconds": 1495590969, "microseconds": 898981}, "event":
> > "DEVICE_DELETED", "data": {"device": "nic0", "path":
> > "/machine/peripheral/nic0"}}
> >
> > After that event, I perform a "query-block" command again but now the
> block
> > device is gone:
> >
> > {"execute":"query-block"}
> >
> > {"return": []}
> >
> >
> > Xen Config File Used
> >
> > kernel="/usr/local/lib/xen/boot/hvmloader"
> >
> > builder='hvm'
> >
> > memory=1024
> >
> > vcpus=1
> >
> > name="debianL2"
> >
> > vfb = ['type=vnc']
> >
> > vif= ['bridge=xenbr0']
> >
> > boot='b'
> >
> > disk=['file:/home/balvisio/debian-disk.img,xvda,w']
> >
> > acpi=1
> >
> > device_model_version='qemu-xen'
> >
> > serial='pty'
> >
> > vnc=1
> >
> > vnclisten=""
> >
> > vncpasswd=""
> >
>

Reply via email to