mbox

[Xen-devel,v4,0/8] xen: arm: Use super pages in p2m

Message ID 1404202883.1829.125.camel@dagon.hellion.org.uk
State New
Headers show

Pull-request

git://xenbits.xen.org/people/ianc/xen.git arm-p2m-superpages-v4

Message

Ian Campbell July 1, 2014, 8:21 a.m. UTC
The following series adds support for superpage mappings (1G and 2M) in
the p2m for dom0 and domU.

On a 32-bit platform this causes the overhead of kernbench vs. native to
drop from 8-9% to 1.5-3% (it's basically the same for both dom0 and
domU).

I couldn't get my 64-bit platform to boot natively for some reason but
in absolute terms kernbench improved by ~5% (domU) to ~15% (dom0).

A   xen: arm: dump vcpu gic info in arch_dump_vcpu_info
At  tools/libxc: pull min/max_t into xc_private.h
Atm tools: arm: allocate large pages to guests.
A   xen: arm: only put_page for p2m operations which require it.
A   xen: arm: handle superpage mappings in p2m_lookup
    xen: arm: add some helpers for assessing p2m pte
m   xen: arm: use superpages in p2m when pages are suitably aligned
m   xen: arm: allocate more than one bank for 1:1 domain 0 if needed

A == ARM ack
t == Tools ACK still needed
m == modifications this round

Ian.

The following changes since commit ad1746e370e4bd93bf64f555880cae7e68c24531:

  docs: update docs for the ~/platform/generation-id key (2014-06-27 15:56:05 +0100)

are available in the git repository at:

  git://xenbits.xen.org/people/ianc/xen.git arm-p2m-superpages-v4

for you to fetch changes up to 8df3676b92d308415e970ee08cb32491808a7332:

  xen: arm: allocate more than one bank for 1:1 domain 0 if needed (2014-07-01 09:15:32 +0100)

----------------------------------------------------------------
Ian Campbell (8):
      xen: arm: dump vcpu gic info in arch_dump_vcpu_info
      tools/libxc: pull min/max_t into xc_private.h
      tools: arm: allocate large pages to guests.
      xen: arm: only put_page for p2m operations which require it.
      xen: arm: handle superpage mappings in p2m_lookup
      xen: arm: add some helpers for assessing p2m pte
      xen: arm: use superpages in p2m when pages are suitably aligned
      xen: arm: allocate more than one bank for 1:1 domain 0 if needed

 tools/libxc/xc_dom_arm.c                  |  131 +++++++++--
 tools/libxc/xc_dom_decompress_unsafe_xz.c |    5 -
 tools/libxc/xc_private.h                  |    5 +
 xen/arch/arm/domain.c                     |    8 +-
 xen/arch/arm/domain_build.c               |  288 +++++++++++++++++++++--
 xen/arch/arm/p2m.c                        |  547 +++++++++++++++++++++++++++++++++-----------
 xen/include/asm-arm/p2m.h                 |   12 +
 7 files changed, 815 insertions(+), 181 deletions(-)