All of lore.kernel.org
 help / color / mirror / Atom feed
From: Isaku Yamahata <yamahata@valinux.co.jp>
To: Benoit Hudzia <benoit.hudzia@gmail.com>
Cc: Avi Kivity <avi@redhat.com>,
	Andrea Arcangeli <aarcange@redhat.com>,
	kvm@vger.kernel.org, qemu-devel@nongnu.org,
	t.hirofuchi@aist.go.jp, satoshi.itoh@aist.go.jp
Subject: Re: [PATCH 0/2][RFC] postcopy migration: Linux char device for postcopy
Date: Fri, 13 Jan 2012 11:03:23 +0900	[thread overview]
Message-ID: <20120113020323.GA27434@valinux.co.jp> (raw)
In-Reply-To: <CAEWUdFXdGaumPC+6YxpsFofPOyuzNGa1xc5E2Y1BFkSKYyTtJQ@mail.gmail.com>

Very interesting. We can cooperate for better (postcopy) live migration.
The code doesn't seem available yet, I'm eager for it.


On Fri, Jan 13, 2012 at 01:09:30AM +0000, Benoit Hudzia wrote:
> Hi,
> 
> Sorry to jump to hijack the thread  like that , however i would like
> to just to inform you  that we recently achieve a milestone out of the
> research project I'm leading. We enhanced KVM in order to deliver
> post copy live migration using RDMA at kernel level.
> 
> Few point on the architecture of the system :
> 
> * RDMA communication engine in kernel ( you can use soft iwarp or soft
> ROCE if you don't have hardware acceleration, however we also support
> standard RDMA enabled NIC) .

Do you mean infiniband subsystem?


> * Naturally Page are transferred with Zerop copy protocol
> * Leverage the async page fault system.
> * Pre paging / faulting
> * No context switch as everything is handled within kernel and using
> the page fault system.
> * Hybrid migration ( pre + post copy) available

Ah, I've been also planing this.
After pre-copy phase, is the dirty bitmap sent?

So far I've thought naively that pre-copy phase would be finished by the
number of iterations. On the other hand your choice is timeout of
pre-copy phase. Do you have rationale? or it was just natural for you?


> * Rely on an independent Kernel Module
> * No modification to the KVM kernel Module
> * Minimal Modification to the Qemu-Kvm code
> * We plan to add the page prioritization algo in order to optimise the
> pre paging algo and background transfer

Where do you plan to implement? in qemu or in your kernel module?
This algo could be shared.

thanks in advance.

> You can learn a little bit more and see a demo here:
> http://tinyurl.com/8xa2bgl
> I hope to be able to provide more detail on the design soon. As well
> as more concrete demo of the system ( live migration of VM running
> large  enterprise apps such as ERP or In memory DB)
> 
> Note: this is just a step stone as the post copy live migration mainly
> enable us to validate the architecture design and  code.
> 
> Regards
> Benoit
> 
> 
> 
> 
> 
> 
> 
> Regards
> Benoit
> 
> 
> On 12 January 2012 13:59, Avi Kivity <avi@redhat.com> wrote:
> > On 01/04/2012 05:03 AM, Isaku Yamahata wrote:
> >> Yes, it's quite doable in user space(qemu) with a kernel-enhancement.
> >> And it would be easy to convert a separated daemon process into a thread
> >> in qemu.
> >>
> >> I think it should be done out side of qemu process for some reasons.
> >> (I just repeat same discussion at the KVM-forum because no one remembers
> >> it)
> >>
> >> - ptrace (and its variant)
> >> ?? Some people want to investigate guest ram on host (qemu stopped or lively).
> >> ?? For example, enhance crash utility and it will attach qemu process and
> >> ?? debug guest kernel.
> >
> > To debug the guest kernel you don't need to stop qemu itself. ?? I agree
> > it's a problem for qemu debugging though.
> >
> >>
> >> - core dump
> >> ?? qemu process may core-dump.
> >> ?? As postmortem analysis, people want to investigate guest RAM.
> >> ?? Again enhance crash utility and it will read the core file and analyze
> >> ?? guest kernel.
> >> ?? When creating core, the qemu process is already dead.
> >
> > Yes, strong point.
> >
> >> It precludes the above possibilities to handle fault in qemu process.
> >
> > I agree.
> >
> >
> > --
> > error compiling committee.c: too many arguments to function
> >
> > --
> > To unsubscribe from this list: send the line "unsubscribe kvm" in
> > the body of a message to majordomo@vger.kernel.org
> > More majordomo info at ??http://vger.kernel.org/majordomo-info.html
> 
> 
> 
> -- 
> " The production of too many useful things results in too many useless people"
> 

-- 
yamahata

WARNING: multiple messages have this Message-ID (diff)
From: Isaku Yamahata <yamahata@valinux.co.jp>
To: Benoit Hudzia <benoit.hudzia@gmail.com>
Cc: Andrea Arcangeli <aarcange@redhat.com>,
	kvm@vger.kernel.org, satoshi.itoh@aist.go.jp,
	t.hirofuchi@aist.go.jp, qemu-devel@nongnu.org,
	Avi Kivity <avi@redhat.com>
Subject: Re: [Qemu-devel] [PATCH 0/2][RFC] postcopy migration: Linux char device for	postcopy
Date: Fri, 13 Jan 2012 11:03:23 +0900	[thread overview]
Message-ID: <20120113020323.GA27434@valinux.co.jp> (raw)
In-Reply-To: <CAEWUdFXdGaumPC+6YxpsFofPOyuzNGa1xc5E2Y1BFkSKYyTtJQ@mail.gmail.com>

Very interesting. We can cooperate for better (postcopy) live migration.
The code doesn't seem available yet, I'm eager for it.


On Fri, Jan 13, 2012 at 01:09:30AM +0000, Benoit Hudzia wrote:
> Hi,
> 
> Sorry to jump to hijack the thread  like that , however i would like
> to just to inform you  that we recently achieve a milestone out of the
> research project I'm leading. We enhanced KVM in order to deliver
> post copy live migration using RDMA at kernel level.
> 
> Few point on the architecture of the system :
> 
> * RDMA communication engine in kernel ( you can use soft iwarp or soft
> ROCE if you don't have hardware acceleration, however we also support
> standard RDMA enabled NIC) .

Do you mean infiniband subsystem?


> * Naturally Page are transferred with Zerop copy protocol
> * Leverage the async page fault system.
> * Pre paging / faulting
> * No context switch as everything is handled within kernel and using
> the page fault system.
> * Hybrid migration ( pre + post copy) available

Ah, I've been also planing this.
After pre-copy phase, is the dirty bitmap sent?

So far I've thought naively that pre-copy phase would be finished by the
number of iterations. On the other hand your choice is timeout of
pre-copy phase. Do you have rationale? or it was just natural for you?


> * Rely on an independent Kernel Module
> * No modification to the KVM kernel Module
> * Minimal Modification to the Qemu-Kvm code
> * We plan to add the page prioritization algo in order to optimise the
> pre paging algo and background transfer

Where do you plan to implement? in qemu or in your kernel module?
This algo could be shared.

thanks in advance.

> You can learn a little bit more and see a demo here:
> http://tinyurl.com/8xa2bgl
> I hope to be able to provide more detail on the design soon. As well
> as more concrete demo of the system ( live migration of VM running
> large  enterprise apps such as ERP or In memory DB)
> 
> Note: this is just a step stone as the post copy live migration mainly
> enable us to validate the architecture design and  code.
> 
> Regards
> Benoit
> 
> 
> 
> 
> 
> 
> 
> Regards
> Benoit
> 
> 
> On 12 January 2012 13:59, Avi Kivity <avi@redhat.com> wrote:
> > On 01/04/2012 05:03 AM, Isaku Yamahata wrote:
> >> Yes, it's quite doable in user space(qemu) with a kernel-enhancement.
> >> And it would be easy to convert a separated daemon process into a thread
> >> in qemu.
> >>
> >> I think it should be done out side of qemu process for some reasons.
> >> (I just repeat same discussion at the KVM-forum because no one remembers
> >> it)
> >>
> >> - ptrace (and its variant)
> >> ?? Some people want to investigate guest ram on host (qemu stopped or lively).
> >> ?? For example, enhance crash utility and it will attach qemu process and
> >> ?? debug guest kernel.
> >
> > To debug the guest kernel you don't need to stop qemu itself. ?? I agree
> > it's a problem for qemu debugging though.
> >
> >>
> >> - core dump
> >> ?? qemu process may core-dump.
> >> ?? As postmortem analysis, people want to investigate guest RAM.
> >> ?? Again enhance crash utility and it will read the core file and analyze
> >> ?? guest kernel.
> >> ?? When creating core, the qemu process is already dead.
> >
> > Yes, strong point.
> >
> >> It precludes the above possibilities to handle fault in qemu process.
> >
> > I agree.
> >
> >
> > --
> > error compiling committee.c: too many arguments to function
> >
> > --
> > To unsubscribe from this list: send the line "unsubscribe kvm" in
> > the body of a message to majordomo@vger.kernel.org
> > More majordomo info at ??http://vger.kernel.org/majordomo-info.html
> 
> 
> 
> -- 
> " The production of too many useful things results in too many useless people"
> 

-- 
yamahata

  parent reply	other threads:[~2012-01-13  2:03 UTC|newest]

Thread overview: 84+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-12-29  1:26 [PATCH 0/2][RFC] postcopy migration: Linux char device for postcopy Isaku Yamahata
2011-12-29  1:26 ` [Qemu-devel] " Isaku Yamahata
2011-12-29  1:26 ` [PATCH 1/2] export necessary symbols Isaku Yamahata
2011-12-29  1:26   ` [Qemu-devel] " Isaku Yamahata
2011-12-29  1:26 ` [PATCH 2/2] umem: chardevice for kvm postcopy Isaku Yamahata
2011-12-29  1:26   ` [Qemu-devel] " Isaku Yamahata
2011-12-29 11:17   ` Avi Kivity
2011-12-29 11:17     ` [Qemu-devel] " Avi Kivity
2011-12-29 12:22     ` Isaku Yamahata
2011-12-29 12:22       ` [Qemu-devel] " Isaku Yamahata
2011-12-29 12:47       ` Avi Kivity
2011-12-29 12:47         ` [Qemu-devel] " Avi Kivity
2012-01-05  4:08   ` 回复: " thfbjyddx
2012-01-05  4:08     ` [Qemu-devel] " thfbjyddx
2012-01-05 10:48     ` 回??: " Isaku Yamahata
2012-01-05 10:48       ` [Qemu-devel] " Isaku Yamahata
2012-01-05 11:10       ` Tommy
2012-01-05 11:10         ` [Qemu-devel] " Tommy
2012-01-05 12:18         ` Isaku Yamahata
2012-01-05 12:18           ` [Qemu-devel] " Isaku Yamahata
2012-01-05 15:02           ` Tommy Tang
2012-01-05 15:02             ` [Qemu-devel] " Tommy Tang
     [not found]           ` <4F05BB68.9050302@hotmail.com>
2012-01-05 15:05             ` Tommy Tang
2012-01-05 15:05               ` [Qemu-devel] " Tommy Tang
2012-01-06  7:02           ` thfbjyddx
2012-01-06  7:02             ` [Qemu-devel] " thfbjyddx
2012-01-06 17:13             ` 回??: [PATCH 2/2] umem: chardevice for kvm?postcopy Isaku Yamahata
2012-01-06 17:13               ` [Qemu-devel] " Isaku Yamahata
2011-12-29  1:31 ` [PATCH 0/2][RFC] postcopy migration: Linux char device for postcopy Isaku Yamahata
2011-12-29  1:31   ` [Qemu-devel] " Isaku Yamahata
2011-12-29 11:24 ` Avi Kivity
2011-12-29 11:24   ` [Qemu-devel] " Avi Kivity
2011-12-29 12:39   ` Isaku Yamahata
2011-12-29 12:39     ` [Qemu-devel] " Isaku Yamahata
2011-12-29 12:55     ` Avi Kivity
2011-12-29 12:55       ` [Qemu-devel] " Avi Kivity
2011-12-29 13:49       ` Isaku Yamahata
2011-12-29 13:49         ` [Qemu-devel] " Isaku Yamahata
2011-12-29 13:52         ` Avi Kivity
2011-12-29 13:52           ` [Qemu-devel] " Avi Kivity
2011-12-29 14:18           ` Isaku Yamahata
2011-12-29 14:18             ` [Qemu-devel] " Isaku Yamahata
2011-12-29 14:35             ` Avi Kivity
2011-12-29 14:35               ` [Qemu-devel] " Avi Kivity
2011-12-29 14:49               ` Isaku Yamahata
2011-12-29 14:49                 ` [Qemu-devel] " Isaku Yamahata
2011-12-29 14:55                 ` Avi Kivity
2011-12-29 14:55                   ` [Qemu-devel] " Avi Kivity
2011-12-29 15:53                   ` Isaku Yamahata
2011-12-29 15:53                     ` [Qemu-devel] " Isaku Yamahata
2011-12-29 16:00                     ` Avi Kivity
2011-12-29 16:00                       ` [Qemu-devel] " Avi Kivity
2011-12-29 16:01                       ` Avi Kivity
2011-12-29 16:01                         ` [Qemu-devel] " Avi Kivity
2012-01-02 17:05                         ` Andrea Arcangeli
2012-01-02 17:05                           ` [Qemu-devel] " Andrea Arcangeli
2012-01-02 17:55                           ` Paolo Bonzini
2012-01-02 17:55                             ` [Qemu-devel] " Paolo Bonzini
2012-01-03 14:25                             ` Andrea Arcangeli
2012-01-03 14:25                               ` [Qemu-devel] " Andrea Arcangeli
2012-01-12 13:57                               ` Avi Kivity
2012-01-12 13:57                                 ` [Qemu-devel] " Avi Kivity
2012-01-13  2:06                                 ` Andrea Arcangeli
2012-01-13  2:06                                   ` [Qemu-devel] " Andrea Arcangeli
2012-01-04  3:03                           ` Isaku Yamahata
2012-01-04  3:03                             ` [Qemu-devel] " Isaku Yamahata
2012-01-12 13:59                             ` Avi Kivity
2012-01-12 13:59                               ` [Qemu-devel] " Avi Kivity
2012-01-13  1:09                               ` Benoit Hudzia
2012-01-13  1:09                                 ` [Qemu-devel] " Benoit Hudzia
2012-01-13  1:31                                 ` Takuya Yoshikawa
2012-01-13  1:31                                   ` [Qemu-devel] " Takuya Yoshikawa
2012-01-13  9:40                                   ` Benoit Hudzia
2012-01-13  9:40                                     ` [Qemu-devel] " Benoit Hudzia
2012-01-13  2:03                                 ` Isaku Yamahata [this message]
2012-01-13  2:03                                   ` Isaku Yamahata
2012-01-13  2:15                                   ` Isaku Yamahata
2012-01-13  2:15                                     ` [Qemu-devel] " Isaku Yamahata
2012-01-13  9:55                                     ` Benoit Hudzia
2012-01-13  9:55                                       ` [Qemu-devel] " Benoit Hudzia
2012-01-13  9:48                                   ` Benoit Hudzia
2012-01-13  9:48                                     ` [Qemu-devel] " Benoit Hudzia
2012-01-13  2:09                               ` Andrea Arcangeli
2012-01-13  2:09                                 ` [Qemu-devel] " Andrea Arcangeli

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20120113020323.GA27434@valinux.co.jp \
    --to=yamahata@valinux.co.jp \
    --cc=aarcange@redhat.com \
    --cc=avi@redhat.com \
    --cc=benoit.hudzia@gmail.com \
    --cc=kvm@vger.kernel.org \
    --cc=qemu-devel@nongnu.org \
    --cc=satoshi.itoh@aist.go.jp \
    --cc=t.hirofuchi@aist.go.jp \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.