WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

RE: [Xen-devel] PoD in other (not GPLPV) drivers

To: James Harper <james.harper@xxxxxxxxxxxxxxxx>, George Dunlap <George.Dunlap@xxxxxxxxxxxxx>
Subject: RE: [Xen-devel] PoD in other (not GPLPV) drivers
From: Paul Durrant <Paul.Durrant@xxxxxxxxxx>
Date: Mon, 28 Feb 2011 13:41:01 +0000
Accept-language: en-US
Acceptlanguage: en-US
Cc: xen devel <xen-devel@xxxxxxxxxxxxxxxxxxx>
Delivery-date: Mon, 28 Feb 2011 05:41:33 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <AEC6C66638C05B468B556EA548C1A77D01C55A30@trantor>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
References: <AcvWIEDjcPpdP6eLTlqDXQDFzQWlHw==><AEC6C66638C05B468B556EA548C1A77D01C559A4@trantor> <AANLkTim0bMXQSVmJD_SoMDkAeh8tq-UR8AJ8WksAwQFn@xxxxxxxxxxxxxx> <291EDFCB1E9E224A99088639C47620228D3EDCA7C9@xxxxxxxxxxxxxxxxxxxxxxxxx> <AEC6C66638C05B468B556EA548C1A77D01C55A30@trantor>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Thread-index: AcvXPudkq8eNWYgmRXWr29mg5O5fzQAAf/gQAAArUzAAAslQEA==
Thread-topic: [Xen-devel] PoD in other (not GPLPV) drivers
James,

 Indeed, zero page sweeping is code inside xen that runs if the PoD cache is 
exhausted. It refills the cache with pages that are zeroed out (replacing them 
with pod entries in the p2m). Your initial balloon down may well be slow if you 
(or the windows kernel) touches the page before you hand it back to xen, since 
the pod code will have to populate each page in the p2m as it is touched.

  Paul

> -----Original Message-----
> From: James Harper [mailto:james.harper@xxxxxxxxxxxxxxxx]
> Sent: 28 February 2011 12:29
> To: Paul Durrant; George Dunlap
> Cc: xen devel
> Subject: RE: [Xen-devel] PoD in other (not GPLPV) drivers
> 
> >
> > I actually have plans to push it earlier because we balloon down
> quite
> late at
> > the moment (off the back of the START IRP in the top level bus
> driver). We are
> > reliant upon zero-page sweeping code in Xen to save us from guest
> crashing up
> > to that point.
> >
> 
> I've modified GPLPV to balloon down at DriverEntry time, which seems
> to be early enough. Prior to that, memory=128 and maxmem=1024 was
> enough to cause a crash under 2008, basically as soon as I tried to
> access the registry in DriverEntry. My drivers are using WDF and are
> therefore loading after the KMDF framework which is going to use
> additional resources. My backup plan is to write a WDM driver that
> loads even earlier than that and does the allocation, passing it to
> the real PV drivers later on, although my concern there is that
> Windows may not like memory allocated by one driver being freed by
> another...
> 
> I've never heard of 'zero-page sweeping code' before... is that a
> way of xen reallocating a previously touched page if it contains all
> 0's if we want a page beyond our allocation limit? That might
> explain why my initial balloon down is so slow! I can tell windows
> to not zero pages before it gives them to me when I do the initial
> balloon down... what are your thoughts on that? Although it's
> unlikely at boot time, in theory they could contain sensitive
> information and I'm supposed to zero them before handing them back
> to xen according to the docs.
> 
> James


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel