All of lore.kernel.org
 help / color / mirror / Atom feed
From: Juergen Gross <jgross@suse.com>
To: xen-devel@lists.xen.org, Ian.Campbell@citrix.com,
	ian.jackson@eu.citrix.com, stefano.stabellini@eu.citrix.com,
	wei.liu2@citrix.com, roger.pau@citrix.com
Subject: Re: [PATCH v4 0/9] libxc: support building large pv-domains
Date: Thu, 12 Nov 2015 06:09:54 +0100	[thread overview]
Message-ID: <56441F22.3040907@suse.com> (raw)
In-Reply-To: <1446734195-20257-1-git-send-email-jgross@suse.com>

On 05/11/15 15:36, Juergen Gross wrote:
> The Xen hypervisor supports starting a dom0 with large memory (up to
> the TB range) by not including the initrd and p2m list in the initial
> kernel mapping. Especially the p2m list can grow larger than the
> available virtual space in the initial mapping.
> 
> The started kernel is indicating the support of each feature via
> elf notes.
> 
> This series enables the domain builder in libxc to do the same as the
> hypervisor. This enables starting of huge pv-domUs via xl.
> 
> Unmapped initrd is supported for 64 and 32 bit domains, omitting the
> p2m from initial kernel mapping is possible for 64 bit domains only.
> 
> Tested with:
> - 32 bit domU (kernel not supporting unmapped initrd)
> - 32 bit domU (kernel supporting unmapped initrd)
> - 1 GB 64 bit domU (kernel supporting unmapped initrd, not p2m)
> - 1 GB 64 bit domU (kernel supporting unmapped initrd and p2m)
> - 900GB 64 bit domU (kernel supporting unmapped initrd and p2m)
> - HVM domU
> 
> Changes in v4:
> - updated patch 1 as suggested by Wei Liu (comment and variable name)
> - modify comment in patch 6 as suggested by Wei Liu
> - rework of patch 8 reducing line count by nearly 100
> - added some additional plausibility checks to patch 8 as suggested by
>   Wei Liu
> - renamed round_pg() to round_pg_up() in patch 9 as suggested by Wei Liu
> 
> Changes in v3:
> - Rebased the complete series to new staging (hvm builder patches by
>   Roger Pau Monne)
> - Removed old patch 1 as it broke stubdom build
> - Introduced new Patch 1 to make allocation of guest memory more clear
>   regarding virtual/physical memory allocation (requested by Ian Campbell)
> - Change name of flag to indicate support of unmapped initrd in patch 2
>   (requested by Ian Campbell)
> - Introduce new patches 3, 4, 5 ("rename domain builder count_pgtables to
>   alloc_pgtables", "introduce domain builder architecture specific data",
>   "use domain builder architecture private data for x86 pv domains") to
>   assist later page table work
> - don't fiddle with initrd virtual address in patch 6 (was patch 3 in v2),
>   add explicit initrd parameters for start_info in struct xc_dom_image
>   instead (requested by Ian Campbell)
> - Introduce new patch 8 ("rework of domain builder's page table handler")
>   to be able to use common helpers for unmapped p2m list (requested by
>   Ian Campbell)
> - use now known segment size in pages for p2m list in patch 9 (was patch
>   5 in v2) instead of fiddling with segment end address (requested by
>   Ian Campbell)
> - split alloc_p2m_list() in patch 9 (was patch 5 in v2) to 32/64 bit
>   variants (requested by Ian Campbell)
> 
> Changes in v2:
> - patch 2 has been removed as it has been applied already
> - introduced new patch 2 as suggested by Ian Campbell: add a flag
>   indicating support of an unmapped initrd to the parsed elf data of
>   the elf_dom_parms structure
> - updated patch description of patch 3 as requested by Ian Campbell
> 
> 
> Juergen Gross (9):
>   libxc: reorganize domain builder guest memory allocator
>   xen: add generic flag to elf_dom_parms indicating support of unmapped
>     initrd
>   libxc: rename domain builder count_pgtables to alloc_pgtables
>   libxc: introduce domain builder architecture specific data
>   libxc: use domain builder architecture private data for x86 pv domains
>   libxc: create unmapped initrd in domain builder if supported
>   libxc: split p2m allocation in domain builder from other magic pages
>   libxc: rework of domain builder's page table handler
>   libxc: create p2m list outside of kernel mapping if supported
> 
>  stubdom/grub/kexec.c               |  12 +-
>  tools/libxc/include/xc_dom.h       |  34 +--
>  tools/libxc/xc_dom_arm.c           |   6 +-
>  tools/libxc/xc_dom_core.c          | 180 ++++++++----
>  tools/libxc/xc_dom_x86.c           | 563 +++++++++++++++++++++----------------
>  tools/libxc/xg_private.h           |  39 +--
>  xen/arch/x86/domain_build.c        |   4 +-
>  xen/common/libelf/libelf-dominfo.c |   3 +
>  xen/include/xen/libelf.h           |   1 +
>  9 files changed, 490 insertions(+), 352 deletions(-)

Could someone please comment on patches 1, 8 and 9?


Juergen

  parent reply	other threads:[~2015-11-12  5:09 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-11-05 14:36 [PATCH v4 0/9] libxc: support building large pv-domains Juergen Gross
2015-11-05 14:36 ` [PATCH v4 1/9] libxc: reorganize domain builder guest memory allocator Juergen Gross
2015-11-12 11:14   ` Wei Liu
2015-11-12 11:20     ` Ian Campbell
2015-11-12 11:22       ` Wei Liu
2015-11-12 11:29       ` Juergen Gross
2015-11-12 11:32         ` Wei Liu
2015-11-12 12:28           ` Juergen Gross
2015-11-12 11:21     ` Juergen Gross
2015-11-12 11:24       ` Wei Liu
2015-11-05 14:36 ` [PATCH v4 2/9] xen: add generic flag to elf_dom_parms indicating support of unmapped initrd Juergen Gross
2015-11-05 17:38   ` Andrew Cooper
2015-11-05 14:36 ` [PATCH v4 3/9] libxc: rename domain builder count_pgtables to alloc_pgtables Juergen Gross
2015-11-05 14:36 ` [PATCH v4 4/9] libxc: introduce domain builder architecture specific data Juergen Gross
2015-11-05 14:36 ` [PATCH v4 5/9] libxc: use domain builder architecture private data for x86 pv domains Juergen Gross
2015-11-05 14:36 ` [PATCH v4 6/9] libxc: create unmapped initrd in domain builder if supported Juergen Gross
2015-11-05 14:36 ` [PATCH v4 7/9] libxc: split p2m allocation in domain builder from other magic pages Juergen Gross
2015-11-05 14:36 ` [PATCH v4 8/9] libxc: rework of domain builder's page table handler Juergen Gross
2015-11-12 12:39   ` Wei Liu
2015-11-12 12:45     ` Juergen Gross
2015-11-05 14:36 ` [PATCH v4 9/9] libxc: create p2m list outside of kernel mapping if supported Juergen Gross
2015-11-12 12:42   ` Wei Liu
2015-11-12  5:09 ` Juergen Gross [this message]
2015-11-12  9:39   ` [PATCH v4 0/9] libxc: support building large pv-domains Wei Liu
2015-11-12  9:41     ` Juergen Gross

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=56441F22.3040907@suse.com \
    --to=jgross@suse.com \
    --cc=Ian.Campbell@citrix.com \
    --cc=ian.jackson@eu.citrix.com \
    --cc=roger.pau@citrix.com \
    --cc=stefano.stabellini@eu.citrix.com \
    --cc=wei.liu2@citrix.com \
    --cc=xen-devel@lists.xen.org \
    /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.