From: Mick Jordan <Mick.Jordan@sun.com>
To: Jeremy Fitzhardinge <jeremy@goop.org>
Cc: Dave McCracken <dcm@mccr.org>,
Xen Developers List <xen-devel@lists.xensource.com>
Subject: Re: Design question for PV superpage support
Date: Mon, 02 Mar 2009 19:59:54 -0800 [thread overview]
Message-ID: <49ACAB3A.2030703@Sun.COM> (raw)
In-Reply-To: <49AC89D6.7020701@goop.org>
On 03/02/09 17:37, Jeremy Fitzhardinge wrote:
> Dave McCracken wrote:
>> My understanding of save/restore is that it will save your carefully
>> selected 2M pages, cheerfully restore them onto a random set of mfns,
>> then expect your guest to continue running. I haven't studied it
>> enough to know whether your guest at least gets a chance to intervene
>> and fix things after the restore.
>
Since restore already requires quite a lot of reset, e.g., grant table
mappings, on the part of the guest, it seems that checking the validity
of any large page mappings should be possible at the same time.
Obviously you could get in a big mess if you mapped the code that is
going to do the fixup on a large page, but that is unlikely and easily
avoidable.
> Your guest would need to be in the position to allocate an extra 512
> L1 pte pages to replace each shattered 2M page, which could be awkward
> - and wouldn't have any realistic way to continue if it fails to do
> so. Perhaps some kind of special pool of pages could be provided to
> the domain to help it satisfy its memory needs in recovering from a
> restore-shattered large page.
In general, I think the guest should assume that large page mappings are
merely an optimization that (a) might not be possible on domain start
due to machine memory fragmentation and (b) that this condition might
also occur on restore. Given these, it must always be prepared to
function with 4K pages, which implies that it would need to preserve
enough page table frame memory to be able revert from large to small pages.
Mick
next prev parent reply other threads:[~2009-03-03 3:59 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-03-02 13:54 Design question for PV superpage support Dave McCracken
2009-03-02 13:58 ` Keir Fraser
2009-03-02 16:43 ` Mick Jordan
2009-03-02 17:06 ` Keir Fraser
2009-03-02 18:02 ` Mick Jordan
2009-03-02 17:29 ` Dave McCracken
2009-03-02 17:52 ` Keir Fraser
2009-03-02 18:03 ` Dan Magenheimer
2009-03-02 18:30 ` Keir Fraser
2009-03-02 18:46 ` Mick Jordan
2009-03-02 18:48 ` Dan Magenheimer
2009-03-02 19:04 ` Keir Fraser
2009-03-02 17:45 ` Mick Jordan
2009-03-02 17:54 ` Keir Fraser
2009-03-02 18:00 ` Dave McCracken
2009-03-02 18:14 ` Mick Jordan
2009-03-02 19:14 ` Dave McCracken
2009-03-03 1:37 ` Jeremy Fitzhardinge
2009-03-03 3:59 ` Mick Jordan [this message]
2009-03-03 14:33 ` Dan Magenheimer
2009-03-03 17:06 ` Mick Jordan
2009-03-03 17:23 ` Jeremy Fitzhardinge
2009-03-03 18:10 ` Keir Fraser
2009-03-03 17:28 ` Jeremy Fitzhardinge
2009-03-03 18:09 ` Dan Magenheimer
2009-03-03 17:26 ` Jeremy Fitzhardinge
2009-03-03 1:32 ` Jeremy Fitzhardinge
2009-03-03 1:15 ` Jeremy Fitzhardinge
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=49ACAB3A.2030703@Sun.COM \
--to=mick.jordan@sun.com \
--cc=dcm@mccr.org \
--cc=jeremy@goop.org \
--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.