All of lore.kernel.org
 help / color / mirror / Atom feed
From: Anthony Liguori <aliguori@us.ibm.com>
To: Ben Thomas <bthomas@virtualiron.com>
Cc: xen-devel@lists.xensource.com
Subject: Re: [RFC] XI Shadow Page Table Mechanism
Date: Wed, 21 Jun 2006 15:31:59 -0500	[thread overview]
Message-ID: <4499ACBF.2030600@us.ibm.com> (raw)
In-Reply-To: <44998B2C.2000109@virtualiron.com>

Ben Thomas wrote:
> This post contains the design document for what is currently known
> as the "XI Shadow Mechanism".  This is a design for shadow
> page table code for fully virtualized HVM domains running on a 64-bit
> Xen hypervisor.
>
> This work was undertaken to address a number of goals.  These are
> enumerated in the document and include:
>
> - ability to run fully virtualized 32, 32PAE and 64 bit guest
>   domains concurrently on a 64-bit hypervisor

This isn't supported currently?  Since an HVM must go through 16 bit, 32 
bit, and 64 bit mode to boot up, how can we start more than one guest at 
a time currently if this doesn't already work?

> - support live migration of fully virtualized domains

Sweet.  What about the current shadow page code limited this?

> - provide good performance and robustness
>
> This design has been implemented and is currently being tested.
> It has been supporting the variety of memory models as noted above,
> and using widely used Windows and Linux distributions (SuSe,
> RedHat and others). At a point in the near future, a patch
> will be available.
>
> This design center is the x86-64 architecture. It is not our
> intent to completely replace all shadow page management, and
> we've attempted to limit the scope of change.
>
> A preliminary version of this design concept has undergone
> brief review with some members of the Xen community. We hope
> that this is of value to the Xen community and welcome your
> feedback and comments.

Can't really comment as it's not quotable.  Some questions that 
immediately come to mind are:

 - how do you deal with large pages within the hypervisor?  do you 
coalesce or just hope there is contiguous pages available?
 - what is the performance benefit in saving the shadow pages for each 
domain?  there's clearly a memory trade-off here so understanding the 
performance gain seems important.
 - OOM can be dealt with in the existing code by just invalidating 
existing mappings to free up pages.  what advantages do your approach 
have to this?  (i realize we don't do this today but in theory, we could).

Interesting stuff.  I'm eager to see the code.

Regards,

Anthony Liguori

> Thanks,
> -b
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@lists.xensource.com
> http://lists.xensource.com/xen-devel

      parent reply	other threads:[~2006-06-21 20:31 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-06-21 18:08 [RFC] XI Shadow Page Table Mechanism Ben Thomas
2006-06-21 18:47 ` Anthony Liguori
2006-06-21 20:19   ` Ben Thomas
2006-06-21 20:31 ` Anthony Liguori [this message]

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=4499ACBF.2030600@us.ibm.com \
    --to=aliguori@us.ibm.com \
    --cc=bthomas@virtualiron.com \
    --cc=xen-devel@lists.xensource.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.