On Tue, Aug 16, 2011 at 04:03:01PM +0100, David Vrabel wrote:
> On 16/08/11 15:48, Konrad Rzeszutek Wilk wrote:
> > On Tue, Aug 16, 2011 at 03:33:19PM +0100, David Vrabel wrote:
> >> On 16/08/11 14:48, Konrad Rzeszutek Wilk wrote:
> >>> On Tue, Aug 16, 2011 at 11:00:37AM +0100, David Vrabel wrote:
> >>>> Allow the extra memory (used by the balloon driver) to be in two
> >>>> regions (typically low and high memory). This allows the balloon
> >>>> driver to increase the number of available low pages (if the initial
> >>>> number if pages is small).
> >>>>
> >>>> As a side effect, the algorithm for building the e820 memory map is
> >>>> simpler and more obviously correct as the map supplied by the
> >>>> hypervisor is (almost) used as is.
> >>>
> >>> Hm, which is not always good. The setting of 'E820_RESERVED' and
> >>> 'E820_UNUSABLE',
> >>> and realigning of start of balloon space at 4GB (if necessary) changes
> >>> need to be preserved. You can look up the why if you run 'git annotate'
> >>> and look at those lines - we had lots of time getting those right.
> >>
> >> My understanding of the history is that the problems were caused by not
> >> paying attention to the reserved regions reported in the machine memory
> >
> > That might have been a problem too, but this is specific to RAM regions.
> >> map. This proposed algorithm is careful to only alter RAM regions --
> >> all reserved regions and gaps are preserved as-is. I should add some
> >> comments explaining this.
> >
> > We cut RAM regions down and the Linux code thought that they were "gap"
> > spaces
> > and used it as PCI I/O space. Hence we marked them as unusable. We need
> > that behavior.
>
> Okay. This behaviour is kept as well.
>
> For example, on my test box with 8 GiB RAM with dom0 started with 752
> MiB of initial pages and limited to 4 GiB.
So dom0_mem=max:4GB,725MB ?
>
> [ 0.000000] Xen: 0000000000000000 - 000000000009e000 (usable)
> [ 0.000000] Xen: 00000000000a0000 - 0000000000100000 (reserved)
> [ 0.000000] Xen: 0000000000100000 - 00000000bf699000 (usable)
> [ 0.000000] Xen: 00000000bf699000 - 00000000bf6af000 (reserved)
> [ 0.000000] Xen: 00000000bf6af000 - 00000000bf6ce000 (ACPI data)
> [ 0.000000] Xen: 00000000bf6ce000 - 00000000c0000000 (reserved)
> [ 0.000000] Xen: 00000000e0000000 - 00000000f0000000 (reserved)
> [ 0.000000] Xen: 00000000fe000000 - 0000000100000000 (reserved)
> [ 0.000000] Xen: 0000000100000000 - 0000000140967000 (usable)
> [ 0.000000] Xen: 0000000140967000 - 0000000240000000 (unusable)
>
What did it look before?
What does "Memory:" look before and after?
> David
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|