xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
From: Olaf Hering <olaf@aepfle.de>
To: Jan Beulich <JBeulich@novell.com>
Cc: xen-devel@lists.xensource.com
Subject: Re: [PATCH 18/21] xenpaging: prevent page-out of first 16MB
Date: Fri, 17 Dec 2010 13:18:24 +0100	[thread overview]
Message-ID: <20101217121824.GA1336@aepfle.de> (raw)
In-Reply-To: <4D0B3B550200007800028A25@vpn.id2.novell.com>

On Fri, Dec 17, Jan Beulich wrote:

> >>> On 16.12.10 at 17:59, Olaf Hering <olaf@aepfle.de> wrote:
> > On Fri, Nov 26, Olaf Hering wrote:
> > 
> >> This is more a workaround than a bugfix:
> >> Don't page out first 16MB of memory.
> >> When the BIOS does its initialization process and xenpaging removes pages,
> >> crashes will occour due to lack of support of xenpaging.
> > 
> > While looking at this again, I came up with this change. Any idea whats
> > at 512K during BIOS startup?
> > 
> > 
> >  Subject: xenpaging: prevent page-out of gfn 0x80
> > 
> > Add a workaround for missing handling of paged-out pages during BIOS 
> > startup.
> > For some reason, only gfn 0x80 is affected.
> > 
> > (XEN) HVM3: HVM Loader
> > (XEN) traps.c:649:d3 Bad GMFN 80 (MFN ffffffffff) to MSR 40000000
> 
> This clearly is another place where page-in needs to be triggered.

Yes, thats true.
I had a printk in gfn_to_mfn for some months, and it did not trigger
during my testing. But then, I also had the patch which keeps the first
16MB in memory.

So as it stands, gfn_to_mfn() should call p2m_mem_paging_populate() at
least, even if that does not fix this crash.
I think the few gfn_to_mfn* variants should not return the paging types
anymore, and just sleep until the page is back. Thats something for next
year, as time runs out for me.

And: I think the various redefines of those functions/macros can go as well.


Olaf

  reply	other threads:[~2010-12-17 12:18 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-11-26 13:49 [PATCH 00/21] xenpaging changes for xen-unstable Olaf Hering
2010-11-26 13:49 ` [PATCH 01/21] xenpaging: break endless loop during inital page-out with large pagefiles Olaf Hering
2010-11-26 13:49 ` [PATCH 02/21] xenpaging: Open paging file only if xenpaging_init() succeeds Olaf Hering
2010-11-26 13:49 ` [PATCH 03/21] xenpaging: allow only one xenpaging binary per guest Olaf Hering
2010-11-26 13:49 ` [PATCH 04/21] xenpaging: populate paged-out pages unconditionally Olaf Hering
2010-11-26 13:49 ` [PATCH 05/21] xenpaging: add signal handling Olaf Hering
2010-11-26 14:29   ` George Dunlap
2010-12-02  9:59     ` Olaf Hering
2010-12-02 11:48       ` George Dunlap
2010-11-26 13:49 ` [PATCH 06/21] xenpaging: print info when free request slots drop below 2 Olaf Hering
2010-11-26 13:49 ` [PATCH 07/21] xenpaging: print p2mt for already paged-in pages Olaf Hering
2010-11-26 13:49 ` [PATCH 08/21] xenpaging: notify policy only on resume Olaf Hering
2010-11-26 13:49 ` [PATCH 09/21] xenpaging: allow negative num_pages and limit num_pages Olaf Hering
2010-11-26 13:49 ` [PATCH 10/21] xenpaging: when populating a page, check if populating is already in progress Olaf Hering
2010-11-26 13:49 ` [PATCH 11/21] xenpaging: optimize p2m_mem_paging_populate Olaf Hering
2010-11-26 13:49 ` [PATCH 12/21] xenpaging: print xenpaging cmdline options Olaf Hering
2010-11-26 13:49 ` [PATCH 13/21] xenpaging: handle temporary out-of-memory conditions during page-in Olaf Hering
2010-11-26 13:49 ` [PATCH 14/21] xenpaging: increase recently used pages from 4MB to 64MB Olaf Hering
2010-11-26 13:49 ` [PATCH 15/21] xenpaging: update machine_to_phys_mapping during page-in and page deallocation Olaf Hering
2010-11-26 13:49 ` [PATCH 16/21] xenpaging: drop paged pages in guest_remove_page Olaf Hering
2010-11-26 13:49 ` [PATCH 17/21] xenpaging: handle HVMCOPY_gfn_paged_out in copy_from/to_user Olaf Hering
2010-11-26 13:49 ` [PATCH 18/21] xenpaging: prevent page-out of first 16MB Olaf Hering
2010-12-16 16:59   ` Olaf Hering
2010-12-17  9:28     ` Jan Beulich
2010-12-17 12:18       ` Olaf Hering [this message]
2010-11-26 13:49 ` [PATCH 19/21] xenpaging: start xenpaging via config option Olaf Hering
2010-11-26 13:49 ` [PATCH 20/21] xenpaging: add dynamic startup delay for xenpaging Olaf Hering
2010-11-26 13:49 ` [PATCH 21/21] xenpaging: (sparse) documenation Olaf Hering
2010-12-07 17:57   ` Ian Jackson
2010-12-07 17:56 ` [PATCH 00/21] xenpaging changes for xen-unstable Ian Jackson
2010-12-07 18:05   ` Keir Fraser
2010-12-07 18:06     ` Keir Fraser
2010-12-07 18:22     ` Ian Jackson

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=20101217121824.GA1336@aepfle.de \
    --to=olaf@aepfle.de \
    --cc=JBeulich@novell.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).