All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Zhoujian (jay)" <jianjay.zhou@huawei.com>
To: Peter Feiner <pfeiner@google.com>
Cc: Ben Gardon <bgardon@google.com>, Peter Xu <peterx@redhat.com>,
	"kvm@vger.kernel.org" <kvm@vger.kernel.org>,
	"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
	"pbonzini@redhat.com" <pbonzini@redhat.com>,
	"dgilbert@redhat.com" <dgilbert@redhat.com>,
	"quintela@redhat.com" <quintela@redhat.com>,
	"Liujinsong (Paul)" <liu.jinsong@huawei.com>,
	"linfeng (M)" <linfeng23@huawei.com>,
	"wangxin (U)" <wangxinxin.wang@huawei.com>,
	"Huangweidong (C)" <weidong.huang@huawei.com>,
	Junaid Shahid <junaids@google.com>
Subject: RE: RFC: Split EPT huge pages in advance of dirty logging
Date: Mon, 2 Mar 2020 13:38:12 +0000	[thread overview]
Message-ID: <B2D15215269B544CADD246097EACE7474BB4A71D@DGGEMM528-MBX.china.huawei.com> (raw)
In-Reply-To: <CAM3pwhGF3ABoew5UOd9xUxtm14VN_o0gr+D=KfR3ZEQjmKgUdQ@mail.gmail.com>



> -----Original Message-----
> From: Peter Feiner [mailto:pfeiner@google.com]
> Sent: Saturday, February 22, 2020 8:19 AM
> To: Junaid Shahid <junaids@google.com>
> Cc: Ben Gardon <bgardon@google.com>; Zhoujian (jay)
> <jianjay.zhou@huawei.com>; Peter Xu <peterx@redhat.com>;
> kvm@vger.kernel.org; qemu-devel@nongnu.org; pbonzini@redhat.com;
> dgilbert@redhat.com; quintela@redhat.com; Liujinsong (Paul)
> <liu.jinsong@huawei.com>; linfeng (M) <linfeng23@huawei.com>; wangxin (U)
> <wangxinxin.wang@huawei.com>; Huangweidong (C)
> <weidong.huang@huawei.com>
> Subject: Re: RFC: Split EPT huge pages in advance of dirty logging
> 
> On Fri, Feb 21, 2020 at 2:08 PM Junaid Shahid <junaids@google.com> wrote:
> >
> > On 2/20/20 9:34 AM, Ben Gardon wrote:
> > >
> > > FWIW, we currently do this eager splitting at Google for live
> > > migration. When the log-dirty-memory flag is set on a memslot we
> > > eagerly split all pages in the slot down to 4k granularity.
> > > As Jay said, this does not cause crippling lock contention because
> > > the vCPU page faults generated by write protection / splitting can
> > > be resolved in the fast page fault path without acquiring the MMU lock.
> > > I believe +Junaid Shahid tried to upstream this approach at some
> > > point in the past, but the patch set didn't make it in. (This was
> > > before my time, so I'm hoping he has a link.) I haven't done the
> > > analysis to know if eager splitting is more or less efficient with
> > > parallel slow-path page faults, but it's definitely faster under the
> > > MMU lock.
> > >
> >
> > I am not sure if we ever posted those patches upstream. Peter Feiner would
> know for sure. One notable difference in what we do compared to the approach
> outlined by Jay is that we don't rely on tdp_page_fault() to do the splitting. So we
> don't have to create a dummy VCPU and the specialized split function is also
> much faster.
> 
> We've been carrying these patches since 2015. I've never posted them.
> Getting them in shape for upstream consumption will take some work. I can look
> into this next week.

Hi Peter Feiner,

May I ask any new updates about your plan? Sorry to disturb.

Regards,
Jay Zhou

WARNING: multiple messages have this Message-ID (diff)
From: "Zhoujian (jay)" <jianjay.zhou@huawei.com>
To: Peter Feiner <pfeiner@google.com>
Cc: "Liujinsong \(Paul\)" <liu.jinsong@huawei.com>,
	Junaid Shahid <junaids@google.com>,
	"linfeng \(M\)" <linfeng23@huawei.com>,
	"kvm@vger.kernel.org" <kvm@vger.kernel.org>,
	"quintela@redhat.com" <quintela@redhat.com>,
	"wangxin \(U\)" <wangxinxin.wang@huawei.com>,
	"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
	Peter Xu <peterx@redhat.com>,
	"dgilbert@redhat.com" <dgilbert@redhat.com>,
	Ben Gardon <bgardon@google.com>,
	"pbonzini@redhat.com" <pbonzini@redhat.com>,
	"Huangweidong \(C\)" <weidong.huang@huawei.com>
Subject: RE: RFC: Split EPT huge pages in advance of dirty logging
Date: Mon, 2 Mar 2020 13:38:12 +0000	[thread overview]
Message-ID: <B2D15215269B544CADD246097EACE7474BB4A71D@DGGEMM528-MBX.china.huawei.com> (raw)
In-Reply-To: <CAM3pwhGF3ABoew5UOd9xUxtm14VN_o0gr+D=KfR3ZEQjmKgUdQ@mail.gmail.com>



> -----Original Message-----
> From: Peter Feiner [mailto:pfeiner@google.com]
> Sent: Saturday, February 22, 2020 8:19 AM
> To: Junaid Shahid <junaids@google.com>
> Cc: Ben Gardon <bgardon@google.com>; Zhoujian (jay)
> <jianjay.zhou@huawei.com>; Peter Xu <peterx@redhat.com>;
> kvm@vger.kernel.org; qemu-devel@nongnu.org; pbonzini@redhat.com;
> dgilbert@redhat.com; quintela@redhat.com; Liujinsong (Paul)
> <liu.jinsong@huawei.com>; linfeng (M) <linfeng23@huawei.com>; wangxin (U)
> <wangxinxin.wang@huawei.com>; Huangweidong (C)
> <weidong.huang@huawei.com>
> Subject: Re: RFC: Split EPT huge pages in advance of dirty logging
> 
> On Fri, Feb 21, 2020 at 2:08 PM Junaid Shahid <junaids@google.com> wrote:
> >
> > On 2/20/20 9:34 AM, Ben Gardon wrote:
> > >
> > > FWIW, we currently do this eager splitting at Google for live
> > > migration. When the log-dirty-memory flag is set on a memslot we
> > > eagerly split all pages in the slot down to 4k granularity.
> > > As Jay said, this does not cause crippling lock contention because
> > > the vCPU page faults generated by write protection / splitting can
> > > be resolved in the fast page fault path without acquiring the MMU lock.
> > > I believe +Junaid Shahid tried to upstream this approach at some
> > > point in the past, but the patch set didn't make it in. (This was
> > > before my time, so I'm hoping he has a link.) I haven't done the
> > > analysis to know if eager splitting is more or less efficient with
> > > parallel slow-path page faults, but it's definitely faster under the
> > > MMU lock.
> > >
> >
> > I am not sure if we ever posted those patches upstream. Peter Feiner would
> know for sure. One notable difference in what we do compared to the approach
> outlined by Jay is that we don't rely on tdp_page_fault() to do the splitting. So we
> don't have to create a dummy VCPU and the specialized split function is also
> much faster.
> 
> We've been carrying these patches since 2015. I've never posted them.
> Getting them in shape for upstream consumption will take some work. I can look
> into this next week.

Hi Peter Feiner,

May I ask any new updates about your plan? Sorry to disturb.

Regards,
Jay Zhou

  parent reply	other threads:[~2020-03-02 13:38 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-02-18 13:13 RFC: Split EPT huge pages in advance of dirty logging Zhoujian (jay)
2020-02-18 13:13 ` Zhoujian (jay)
2020-02-18 17:43 ` Peter Xu
2020-02-18 17:43   ` Peter Xu
2020-02-19 13:19   ` Zhoujian (jay)
2020-02-19 13:19     ` Zhoujian (jay)
2020-02-19 17:19     ` Peter Xu
2020-02-19 17:19       ` Peter Xu
2020-02-20 13:52       ` Zhoujian (jay)
2020-02-20 13:52         ` Zhoujian (jay)
2020-02-20 17:32         ` Ben Gardon
2020-02-20 17:32           ` Ben Gardon
2020-02-20 17:34         ` Ben Gardon
2020-02-20 17:34           ` Ben Gardon
2020-02-20 18:17           ` Peter Xu
2020-02-20 18:17             ` Peter Xu
2020-02-21  6:51             ` Zhoujian (jay)
2020-02-21  6:51               ` Zhoujian (jay)
2020-02-21 22:08           ` Junaid Shahid
2020-02-22  0:19             ` Peter Feiner
2020-02-22  0:19               ` Peter Feiner
2020-02-24  1:07               ` Zhoujian (jay)
2020-02-24  1:07                 ` Zhoujian (jay)
2020-03-02 13:38               ` Zhoujian (jay) [this message]
2020-03-02 13:38                 ` Zhoujian (jay)
2020-03-02 16:28                 ` Peter Feiner
2020-03-03  4:29                   ` Zhoujian (jay)
2020-03-03  4:29                     ` Zhoujian (jay)

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=B2D15215269B544CADD246097EACE7474BB4A71D@DGGEMM528-MBX.china.huawei.com \
    --to=jianjay.zhou@huawei.com \
    --cc=bgardon@google.com \
    --cc=dgilbert@redhat.com \
    --cc=junaids@google.com \
    --cc=kvm@vger.kernel.org \
    --cc=linfeng23@huawei.com \
    --cc=liu.jinsong@huawei.com \
    --cc=pbonzini@redhat.com \
    --cc=peterx@redhat.com \
    --cc=pfeiner@google.com \
    --cc=qemu-devel@nongnu.org \
    --cc=quintela@redhat.com \
    --cc=wangxinxin.wang@huawei.com \
    --cc=weidong.huang@huawei.com \
    /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.