tools: Refactor foreign memory mapping into libxenforeignmemory
authorIan Campbell <ian.campbell@citrix.com>
Thu, 18 Jun 2015 15:30:19 +0000 (16:30 +0100)
committerIan Campbell <ian.campbell@citrix.com>
Fri, 22 Jan 2016 12:24:03 +0000 (12:24 +0000)
commit32486916793fd78a41fc25e53d2b53a5aa0b1bd5
tree4006ca61b4e6210c57fde7ea7311be72486a5c52
parentee09d0a5ed068870ef2991fdc1b292b94bd1455f
tools: Refactor foreign memory mapping into libxenforeignmemory

libxenforeignmemory will provide a stable API and ABI for mapping
foreign domain memory (subject to appropriate privileges).

The new library exposes an interface equivalent to
xc_map_foreign_memory_bulk, which all the other
xc_map_foreign_memory_* functions (which remain in libxc) are
implemented in terms of.

Upon request (via #define XC_WANT_COMPAT_MAP_FOREIGN_API) libxenctrl
will provide a compat API for the old names. This is used by qemu-xen
and qemu-trad as well as various in tree things (which required
de-dupping various #includes in some too to get the #define before the
first).

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
[ ijc -- updated MINIOS_UPSTREAM_REVISION and QEMU_TRADITIONAL_REVISION ]
47 files changed:
.gitignore
Config.mk
stubdom/Makefile
tools/Makefile
tools/Rules.mk
tools/console/daemon/utils.c
tools/console/daemon/utils.h
tools/libs/Makefile
tools/libs/foreignmemory/Makefile [new file with mode: 0644]
tools/libs/foreignmemory/compat.c [new file with mode: 0644]
tools/libs/foreignmemory/core.c [new file with mode: 0644]
tools/libs/foreignmemory/freebsd.c [new file with mode: 0644]
tools/libs/foreignmemory/include/xenforeignmemory.h [new file with mode: 0644]
tools/libs/foreignmemory/libxenforeignmemory.map [new file with mode: 0644]
tools/libs/foreignmemory/linux.c [new file with mode: 0644]
tools/libs/foreignmemory/minios.c [new file with mode: 0644]
tools/libs/foreignmemory/netbsd.c [new file with mode: 0644]
tools/libs/foreignmemory/private.h [new file with mode: 0644]
tools/libs/foreignmemory/solaris.c [new file with mode: 0644]
tools/libxc/Makefile
tools/libxc/include/xenctrl.h
tools/libxc/include/xenctrl_compat.h
tools/libxc/xc_foreign_memory.c
tools/libxc/xc_freebsd_osdep.c [deleted file]
tools/libxc/xc_linux_osdep.c [deleted file]
tools/libxc/xc_minios.c
tools/libxc/xc_netbsd.c
tools/libxc/xc_private.c
tools/libxc/xc_private.h
tools/libxc/xc_solaris.c
tools/libxc/xc_sr_restore.c
tools/libxc/xc_sr_save.c
tools/libxc/xg_private.h
tools/libxl/libxl_internal.h
tools/misc/xen-mfndump.c
tools/ocaml/libs/xc/xenctrl_stubs.c
tools/python/xen/lowlevel/xc/xc.c
tools/tests/mce-test/tools/xen-mceinj.c
tools/tests/mem-sharing/memshrtool.c
tools/xenmon/xenbaked.c
tools/xenpaging/pagein.c
tools/xenpaging/xenpaging.c
tools/xenpaging/xenpaging.h
tools/xenstore/xenstored_core.c
tools/xenstore/xenstored_core.h
tools/xentrace/xenctx.c
tools/xentrace/xentrace.c