[Qemu-devel] This qemu binary lacks hda support.

2015-02-07 Thread Yaodong Yang
Hi all, I met the following issue in my expeirment of vm live storage migration. I install the libvirt-bin and qemu in the ubuntu system. I directly install them through the following commands. sudo apt-get install libvirt-bin, kvm After this isntallation, everything works well. Now, when I

Re: [Qemu-devel] vm live storage migration approach.

2015-01-30 Thread Yaodong Yang
Thank you Stefan! Now I understand the workflow. -Yaodong On Fri, Jan 30, 2015 at 2:37 PM, Stefan Hajnoczi wrote: > On Fri, Jan 30, 2015 at 8:13 PM, Yaodong Yang > wrote: > > An follow up questions. > > > > Suppose I have a running VM with two virtual disks, I would l

Re: [Qemu-devel] vm live storage migration approach.

2015-01-30 Thread Yaodong Yang
case, "migrate -b" has a higher VM downtime during the migration. Yaodong On Fri, Jan 30, 2015 at 1:21 PM, Eric Blake wrote: > On 01/30/2015 09:25 AM, Yaodong Yang wrote: > > Hi all, > > > > I'm investigating the current schemes for the VM live storage m

[Qemu-devel] vm live storage migration approach.

2015-01-30 Thread Yaodong Yang
Hi all, I'm investigating the current schemes for the VM live storage migration in QEMU system. I have the following questions: 1. What is the functionality of drive_mirror in QEMU? Is it designed as a VM live storage migration approach? 2. What's the difference between drive_mirror and vMotion?

[Qemu-devel] A question about virtio inside qemu

2013-12-11 Thread Yaodong Yang
Hi community,I have a quick question about the virtio inside qemu. When the user application sends to a specific virtual disk a large number of read requests in a very short time, where should these requests be queued? Inside the virtqueue? virtqueue available ring or the underlying bdrv_read_aio()

[Qemu-devel] virtio virt-queue and virt-ring

2013-11-30 Thread Yaodong Yang
Inside file ./hw/virtio/virtio.c, The following structs are defined. I understood that for each virtual disk, there is a corresponding queue and this queue is implemented by a ring. My questions is what is the meaning of each element inside struct VRing?Thanks a lot!typedef struct VRing{    unsigne

[Qemu-devel] virtio queue

2013-11-30 Thread Yaodong Yang
Hi all,At any given time, how do we get the number of IO requests for a certain disk in the virtqueue? These requests are waiting for the process.Thanks!Yaodong 

[Qemu-devel] virtio queue in qemu

2013-11-26 Thread Yaodong Yang
Hi all,How to get the number of io requests inside the virtio queue, from a linux guest vm to a given virtual disk, in a given time?Thanks!

[Qemu-devel] migration speed setting.

2013-11-14 Thread Yaodong Yang
Hi everyone,I know that inside the qemu monitor, we can set the max migration speed through " set_migration_speed 32 ". This '32' means 32MB.My confusion is about the meaning of this 32MB. I checked the code and find that this '32MB' is the buffer size insde QemuFile, which include all the data sub

[Qemu-devel] About the IO-mirroring functionality inside the qemu

2013-11-05 Thread Yaodong Yang
Hi all, Does the Qemu have the storage migration tool, like the io-mirroring inside the vmware? io-mirroring means for all the ioes, they are send to both source and destination at the same time. Thanks!

[Qemu-devel] About the migration_set_speed in the qemu monitor

2013-10-27 Thread Yaodong Yang
Hi all, When we migrate a vm from one host to another, we set the " migrate_set_speed 200" inside the qemu monitor. What does the 200 means? Is it the maximum migration speed is 200MB/s or something else? Thanks!

[Qemu-devel] About the host page cache inside the qemu

2013-10-23 Thread Yaodong Yang
Hi all, I read the slides "An Update Overview of the QEMU Storage Stack", which indicate that if caching mode=none, the host page cache is off and guest disk write cache is on. My question is where the implementation is inside the qemu. How to control the io to a virtual disk image( a raw disk

[Qemu-devel] An issue in block-migration

2013-10-02 Thread Yaodong Yang
Hi all,In block-migration.c file, line 435, if (bdrv_get_dirty(bmds->bs, sector)) {It looks like this "if statement" is used to check whether a chunk is dirty or not. If it is dirty, system will migrate a whole chunk, 1MB data, to the destination. Otherwise, the cur_dirty will increase by 1MB/512B

[Qemu-devel] About the IO queue inside qemu

2013-10-01 Thread Yaodong Yang
Hi all, I'm wondering is there any io queue inside qemu? Is there any IO scheduling inside it? I notice that there is an IO track feature inside block.c, but I do not know the purpose of it. Could someone explain it for me? Thanks a lot! Yaodong

[Qemu-devel] virtio with Windows 8.

2013-09-08 Thread Yaodong Yang
Hi all, 1. I create a raw image named as win8.img, using the following command: /usr/local/kvm/bin/qemu-img create -f raw win8.img 20G 2. I try to install win8 with the following command, but I failed several times. sudo /usr/local/kvm/bin/qemu-system-x86_64 -enable-kvm -drive file=./win8.img,i

[Qemu-devel] Block-migration and io thread contention

2013-09-07 Thread Yaodong Yang
Hi all,Inside qemu, there is block-migration feature, like migrate -b. There is also a migrate_set_speed feature inside the monitor to control the migration thread. I am wondering can we make some setting to let migration thread yield to Io thread, or let the migration thread has the higher priorit

[Qemu-devel] About coroutine inside qemu

2013-08-30 Thread Yaodong Yang
When a new work thread, which is not inside coroutine,  enter a coroutine(named as A), what happened to the work thread? Is it true that the work thread also become a coroutine, or it just stop? Later if the coroutine A call yield. what happened to the work thread?

Re: [Qemu-devel] questions about the bdrv_co_do_readv()

2013-08-27 Thread Yaodong Yang
coroutine, bottom-half schemes are used for the migration job. is there any reference material related? Thanks a lot ! Yaodong it send s the bdrv_co_do_readv(block.c) function is exectued On Aug 27, 2013, at 2:45 AM, Stefan Hajnoczi wrote: > On Mon, Aug 26, 2013 at 09:59:51PM

[Qemu-devel] questions about the bdrv_co_do_readv()

2013-08-26 Thread Yaodong Yang
In the block-migration period, each chunk of data is read by bdrv_aio_readv(), then bdrv_co_aio_rw_vector() , then bdrv_co_do_rw(). Inside the bdrv_co_do_rw() function, the bdrv_co_do_readv() function is called twice. and exit without finish the execution of the bdrv_co_do_readv() function. Al

[Qemu-devel] AioContext, IOthread and Block migration thread

2013-08-26 Thread Yaodong Yang
I'm a newer in QEMU, and I have the following questions: 1. Is it true that all the requests to disk images need to go through function bdrv_co_do_readv() or bdrv_co_do_writev()? 2. In block-migration thread, the bdrv_co_do_readv is also called to read blocks from disk images, in order to finis

Re: [Qemu-devel] questions about AIO Bitmap

2013-08-16 Thread Yaodong Yang
Hello Laszlo, Thank you very much for your very informative answer! It makes me understood totally about the bitmap calculation. Thanks again! Yaodong On Aug 16, 2013, at 9:45 AM, Laszlo Ersek wrote: > On 08/16/13 15:39, Yaodong Yang wrote: >> Hello everyone, >> >>

[Qemu-devel] questions about AIO Bitmap

2013-08-16 Thread Yaodong Yang
Hello everyone,in QEMU 1.5.1, block-migration.c, there is a function below:static void alloc_aio_bitmap(BlkMigDevState *bmds){    BlockDriverState *bs = bmds->bs;    int64_t bitmap_size;    bitmap_size = (bdrv_getlength(bs) >> BDRV_SECTOR_BITS) +            BDRV_SECTORS_PER_DIRTY_CHUNK * 8 - 1;   

Re: [Qemu-devel] GDB debugging of QEMU.

2013-08-09 Thread Yaodong Yang
It works! Thank you very much! Best, Yaodong -- Yaodong Yang Ph.D. Student Department of Computer Science & Engineering University of Nebraska-Lincoln Email: yaodong.ya...@gmail.com OR yy...@cse.unl.edu On Aug 9, 2013, at 12:25 PM, Max Fili

Re: [Qemu-devel] GDB debugging of QEMU.

2013-08-09 Thread Yaodong Yang
Hello Peter, Best, Yaodong -- Yaodong Yang Ph.D. Student Department of Computer Science & Engineering University of Nebraska-Lincoln Email: yaodong.ya...@gmail.com OR yy...@cse.unl.edu On Aug 9, 2013, at 11:56 AM, Peter Maydell wrote: &g

[Qemu-devel] GDB debugging of QEMU.

2013-08-09 Thread Yaodong Yang
Hello everyone, I have a simple question about the debugging of qemu. I used the qemu-1.5.1, and added several .c and .h files related the block drivers. I want to debug my own implementations using gdb. but I have no idea how to do it. I tried the following commands. ./configure --enable-debug

[Qemu-devel] The difference between qemu-kvm-1.2.0 & qemu-1.5.1

2013-07-22 Thread Yaodong Yang
Hi everyone, Previously, I used the qemu-kvm-1.2.0 from (http://www.linux-kvm.org/page/Downloads), and it worked well in my ubuntu server. Later, I found that some of the implementation(qemu-kvm-1.2.0) is out of date, so that I changed to qemu-1.5.1 (http://wiki.qemu.org/Download). I found tha

[Qemu-devel] Questions about Block subsystem in QEMU.

2013-07-08 Thread Yaodong Yang
hello everyone, I have a question about the qemu block-subsytem. When a user in guest os perform an io operation, how this io request performed in the qemu. Where is the start point in qemu code to serve this request. Thanks! -- Yaodong Yang Computer Science and Engineering Department

Re: [Qemu-devel] QEMU live block-migration

2013-07-08 Thread Yaodong Yang
Yes, I found it in the qemu-1.5.1 and it's much clear for me now. I think I need to work on this version, other than the out-of-date version qemu-kvm-1.2.0. Thanks a lot. On Mon, Jul 8, 2013 at 12:29 PM, Yaodong Yang wrote: > I used the qemu-kvm 1.2.0, so I did not find it in the code

Re: [Qemu-devel] QEMU live block-migration

2013-07-08 Thread Yaodong Yang
I used the qemu-kvm 1.2.0, so I did not find it in the code. I will move to the current qemu version. Thanks! On Mon, Jul 8, 2013 at 12:18 PM, Michael Roth wrote: > Quoting Yaodong Yang (2013-07-08 10:57:25) > > Hello Michael, > >Thanks for your help! > >I

Re: [Qemu-devel] QEMU live block-migration

2013-07-08 Thread Yaodong Yang
n loop. Is it correct? Also, I did not find any thread_create related function in the migrate_fd_connect() function. I think my current goal is to find the exact start point of the migration thread. Thanks again. Yaodong On Mon, Jul 8, 2013 at 10:32 AM, Michael Roth wrote: > Quoting Yaodo

[Qemu-devel] QEMU live block-migration

2013-07-08 Thread Yaodong Yang
main loop (main_loop_wait(int nonblocking) function). I want to know is there a new dedicated thread created for this migration task or not? If so, where in the code the new thread created. Thanks! Yaodong -- Yaodong Yang Computer Science and Engineering Department University of Nebraska--Lincoln, L

[Qemu-devel] Where to find the definition of RunState, RUN_STATE_IMMIGRATE

2013-06-24 Thread Yaodong Yang
Hi all, I'm a newer in QEMU-KVM. When I read the source code of qemu-kvm-1.2.0, I can not find the definition of some types, like RunState (in Vl.c file). I also checked the kvm-kmod-3.5, but I still can not find the definition. Could anyone give me some hints about where to find it. Thanks in

[Qemu-devel] About network bridge.

2013-04-22 Thread Yaodong Yang
Best, Yaodong -- Yaodong Yang Ph.D. Student Department of Computer Science & Engineering University of Nebraska-Lincoln Email: yaodong.ya...@gmail.com OR yy...@cse.unl.edu

[Qemu-devel] Live Block Migration Strategy

2013-04-19 Thread Yaodong Yang
current block migration algorithm (qemu-kvm 1.2.0). Any information or guidance are much more appreciated! Thanks! Best, Yaodong -- Yaodong Yang Ph.D. Student Department of Computer Science & Engineering University of Nebraska-Lincoln Email: yaodon