The ARM virtualization extension provides 2-stage paging, a similar mechanisms
to Intel's EPT, which can be used to trace the memory accesses performed by
the guest systems. This series sets up the necessary infrastructure in the
ARM code to deliver the event on R/W/X traps. Finally, we turn on the
compilation of mem_access and mem_event on ARM and perform the necessary
changes to the tools side.

This version of the series is based on master and each patch in the series has
been compile tested on both ARM and x86.

This PATCH series is also available at:
https://github.com/tklengyel/xen/tree/arm_memaccess15

Julien Grall (1):
  xen/arm: Implement domain_get_maximum_gpfn

Tamas K Lengyel (8):
  xen/arm: groundwork for mem_access support on ARM
  xen/arm: Allow hypervisor access to mem_access protected pages
  xen/arm: Data abort exception (R/W) mem_access events
  xen/arm: Instruction prefetch abort (X) mem_access event handling
  xen: Make gpfn related memops compatible with wider return values
  tools/libxc: Allocate magic page for mem access on ARM
  tools/tests: Enable xen-access on ARM
  xen/arm: Enable mem_access on ARM

 config/arm32.mk                         |   1 +
 config/arm64.mk                         |   1 +
 tools/libxc/include/xenguest.h          |   2 +-
 tools/libxc/xc_core.h                   |   4 +-
 tools/libxc/xc_core_arm.c               |   6 +-
 tools/libxc/xc_core_x86.c               |   8 +-
 tools/libxc/xc_dom_arm.c                |   6 +-
 tools/libxc/xc_domain.c                 |  14 +-
 tools/libxc/xc_domain_save.c            |   3 +-
 tools/libxc/xg_private.h                |   2 +-
 tools/tests/mce-test/tools/xen-mceinj.c |  28 +-
 tools/tests/xen-access/Makefile         |   4 +-
 tools/tests/xen-access/xen-access.c     |  38 +-
 xen/arch/arm/mm.c                       |   2 +-
 xen/arch/arm/p2m.c                      | 604 +++++++++++++++++++++++++++++---
 xen/arch/arm/traps.c                    |  78 ++++-
 xen/common/memory.c                     |  16 +-
 xen/include/asm-arm/arm32/page.h        |   7 +-
 xen/include/asm-arm/arm64/page.h        |   7 +-
 xen/include/asm-arm/domain.h            |   1 +
 xen/include/asm-arm/p2m.h               |  32 +-
 xen/include/asm-arm/page.h              |   4 +-
 xen/include/asm-arm/processor.h         |  13 +-
 xen/include/asm-x86/p2m.h               |  10 -
 xen/include/public/memory.h             |  24 +-
 xen/include/xen/p2m-common.h            |  14 +
 26 files changed, 796 insertions(+), 133 deletions(-)

-- 
2.1.4


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel

Reply via email to