From: Marcelo Tosatti <mtosatti@redhat.com>
To: Avi Kivity <avi@redhat.com>
Cc: kvm@vger.kernel.org,
Xiao Guangrong <xiaoguangrong@linux.vnet.ibm.com>,
takuya.yoshikawa@gmail.com
Subject: Re: [PATCH 0/4] Unlocked TLB flush
Date: Mon, 7 May 2012 22:27:41 -0300 [thread overview]
Message-ID: <20120508012741.GA26336@amt.cnet> (raw)
In-Reply-To: <20120508012534.GA26243@amt.cnet>
On Mon, May 07, 2012 at 10:25:34PM -0300, Marcelo Tosatti wrote:
> On Thu, May 03, 2012 at 02:22:58PM +0300, Avi Kivity wrote:
> > This patchset implements unlocked TLB flushing for KVM. An operation that
> > generates stale TLB entries can mark the TLB as dirty instead of flushing
> > immediately, and then flush after releasing mmu_lock but before returning
> > to the guest or the caller. A few call sites are converted too.
> >
> > Note not all call sites are easily convertible; as an example, sync_page()
> > must flush before reading the guest page table.
>
> Huh? Are you referring to:
>
> * Note:
> * We should flush all tlbs if spte is dropped even though guest is
> * responsible for it. Since if we don't,
> * kvm_mmu_notifier_invalidate_page
> * and kvm_mmu_notifier_invalidate_range_start detect the mapping page
> * isn't
> * used by guest then tlbs are not flushed, so guest is allowed to
> * access the
> * freed pages.
> * And we increase kvm->tlbs_dirty to delay tlbs flush in this case.
>
> With an increased dirtied_count the flush can be performed
> by kvm_mmu_notifier_invalidate_page.
Which is what patch 1 does. Your comment regarding sync_page()
above is what is outdated, unless i am missing something.
next prev parent reply other threads:[~2012-05-08 2:29 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-05-03 11:22 [PATCH 0/4] Unlocked TLB flush Avi Kivity
2012-05-03 11:22 ` [PATCH 1/4] KVM: Add APIs for unlocked " Avi Kivity
2012-05-03 13:23 ` Xiao Guangrong
2012-05-03 14:11 ` Avi Kivity
2012-05-07 7:06 ` Xiao Guangrong
2012-05-07 7:59 ` Avi Kivity
2012-05-08 1:55 ` Marcelo Tosatti
2012-05-08 9:09 ` Avi Kivity
2012-05-08 13:50 ` Marcelo Tosatti
2012-05-08 9:09 ` Avi Kivity
2012-05-08 2:25 ` Marcelo Tosatti
2012-05-08 12:39 ` Avi Kivity
2012-05-09 21:03 ` Marcelo Tosatti
2012-05-21 14:45 ` Avi Kivity
2012-05-03 11:23 ` [PATCH 2/4] KVM: Flush TLB in mmu notifier without holding mmu_lock Avi Kivity
2012-05-03 11:23 ` [PATCH 3/4] KVM: Flush TLB in FNAME(invlpg) " Avi Kivity
2012-05-03 11:23 ` [PATCH 4/4] KVM: Flush TLB in change_pte mmu notifier " Avi Kivity
2012-05-08 1:25 ` [PATCH 0/4] Unlocked TLB flush Marcelo Tosatti
2012-05-08 1:27 ` Marcelo Tosatti [this message]
2012-05-08 10:51 ` Avi Kivity
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=20120508012741.GA26336@amt.cnet \
--to=mtosatti@redhat.com \
--cc=avi@redhat.com \
--cc=kvm@vger.kernel.org \
--cc=takuya.yoshikawa@gmail.com \
--cc=xiaoguangrong@linux.vnet.ibm.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.