All of lore.kernel.org
 help / color / mirror / Atom feed
From: Gleb Natapov <gleb@kernel.org>
To: Paolo Bonzini <pbonzini@redhat.com>
Cc: Tang Chen <tangchen@cn.fujitsu.com>,
	mtosatti@redhat.com, nadav.amit@gmail.com, jan.kiszka@web.de,
	kvm@vger.kernel.org, laijs@cn.fujitsu.com,
	isimatu.yasuaki@jp.fujitsu.com, guz.fnst@cn.fujitsu.com,
	linux-kernel@vger.kernel.org
Subject: Re: [PATCH v5 4/7] kvm, mem-hotplug: Reload L1' apic access page on migration in vcpu_enter_guest().
Date: Thu, 11 Sep 2014 17:47:16 +0300	[thread overview]
Message-ID: <20140911144716.GF26540@minantech.com> (raw)
In-Reply-To: <5411B3B3.900@redhat.com>

On Thu, Sep 11, 2014 at 04:37:39PM +0200, Paolo Bonzini wrote:
> Il 11/09/2014 16:31, Gleb Natapov ha scritto:
> >> > What if the page being swapped out is L1's APIC access page?  We don't
> >> > run prepare_vmcs12 in that case because it's an L2->L0->L2 entry, so we
> >> > need to "do something".
> > We will do something on L2->L1 exit. We will call kvm_reload_apic_access_page().
> > That is what patch 5 of this series is doing.
> 
> Sorry, I meant "the APIC access page prepared by L1" for L2's execution.
> 
> You wrote:
> 
> > if (!is_guest_mode() || !(vmcs12->secondary_vm_exec_control & ECONDARY_EXEC_VIRTUALIZE_APIC_ACCESSES))
> >     write(PIC_ACCESS_ADDR)
> > 
> > In other words if L2 shares L1 apic access page then reload, otherwise do nothing.
> 
> but in that case you have to redo nested_get_page, so "do nothing"
> doesn't work.
> 
Ah, 7/7 is new in this submission. Before that this page was still
pinned.  Looking at 7/7 now I do not see how it can work since it has no
code for mmu notifier to detect that it deals with such page and call
kvm_reload_apic_access_page().  I said to Tang previously that nested
kvm has a bunch of pinned page that are hard to deal with and suggested
to iron out non nested case first :(

--
			Gleb.

  reply	other threads:[~2014-09-11 14:53 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-09-11  5:37 [PATCH v5 0/7] kvm, mem-hotplug: Do not pin ept identity pagetable and apic access page Tang Chen
2014-09-11  5:38 ` [PATCH v5 1/7] kvm: Use APIC_DEFAULT_PHYS_BASE macro as the apic access page address Tang Chen
2014-09-11  9:10   ` Paolo Bonzini
2014-09-11  5:38 ` [PATCH v5 2/7] kvm: Remove ept_identity_pagetable from struct kvm_arch Tang Chen
2014-09-11  9:14   ` Paolo Bonzini
2014-09-11  5:38 ` [PATCH v5 3/7] kvm: Make init_rmode_identity_map() return 0 on success Tang Chen
2014-09-11  9:17   ` Paolo Bonzini
2014-09-11 10:26     ` tangchen
2014-09-11  5:38 ` [PATCH v5 4/7] kvm, mem-hotplug: Reload L1' apic access page on migration in vcpu_enter_guest() Tang Chen
2014-09-11  9:21   ` Paolo Bonzini
2014-09-11 10:12     ` Gleb Natapov
2014-09-11 10:47       ` Paolo Bonzini
2014-09-11 11:30         ` Gleb Natapov
2014-09-11 13:05           ` Paolo Bonzini
2014-09-11 13:59             ` Gleb Natapov
2014-09-11 14:06               ` Paolo Bonzini
2014-09-11 14:21                 ` Gleb Natapov
2014-09-11 14:24                   ` Paolo Bonzini
2014-09-11 14:31                     ` Gleb Natapov
2014-09-11 14:37                       ` Paolo Bonzini
2014-09-11 14:47                         ` Gleb Natapov [this message]
2014-09-12  3:32                           ` tangchen
2014-09-12  3:36                     ` tangchen
2014-09-11 10:20     ` tangchen
2014-09-11 10:39       ` Paolo Bonzini
2014-09-11  5:38 ` [PATCH v5 5/7] kvm, mem-hotplug: Reload L1's apic access page on migration when L2 is running Tang Chen
2014-09-11  9:28   ` Paolo Bonzini
2014-09-11  5:38 ` [PATCH v5 6/7] kvm, mem-hotplug: Unpin and remove kvm_arch->apic_access_page Tang Chen
2014-09-11  9:34   ` Paolo Bonzini
2014-09-11  5:38 ` [PATCH v5 7/7] kvm, mem-hotplug: Unpin and remove nested_vmx->apic_access_page Tang Chen
2014-09-11  9:33   ` Paolo Bonzini
2014-09-11  9:43     ` tangchen

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=20140911144716.GF26540@minantech.com \
    --to=gleb@kernel.org \
    --cc=guz.fnst@cn.fujitsu.com \
    --cc=isimatu.yasuaki@jp.fujitsu.com \
    --cc=jan.kiszka@web.de \
    --cc=kvm@vger.kernel.org \
    --cc=laijs@cn.fujitsu.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mtosatti@redhat.com \
    --cc=nadav.amit@gmail.com \
    --cc=pbonzini@redhat.com \
    --cc=tangchen@cn.fujitsu.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.