[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH XEN v5 00/23] Begin to disentangle libxenctrl and provide some stable libraries
We intend to stabilise some parts of the libxenctrl interface by splitting out some functionality into separate stable libraries. This is the xen part of the first phase of that change. This mail is (or is intended to be) a reply to a "0/<VARIOUS>" super-intro mail covering all of the related patch series and which contains more details. Ian Campbell (23): tools/Rules.mk: Properly handle libraries with recursive dependencies. tools: Refactor "xentoollog" into its own library tools/libxc: Remove osdep indirection for xc_evtchn tools: Refactor /dev/xen/evtchn wrappers into libxenevtchn. tools: Arrange to check public headers for ANSI compatiblity tools/libxc: Remove osdep indirection for xc_gnt{shr,tab} tools: Refactor /dev/xen/gnt{dev,shr} wrappers into libxengnttab. tools/libxc: Remove osdep indirection for privcmd tools: Refactor hypercall calling wrappers into libxencall. tools/libxc: drop xc_map_foreign_bulk_compat wrappers tools: Remove xc_map_foreign_batch tools: Implement xc_map_foreign_range(s) in terms of common helper tools: Refactor foreign memory mapping into libxenforeignmemory tools: foreignmemory: provide xenforeignmemory_unmap. foreignmemory: use size_t for size arguments. tools/libs/evtchn: Review and update doc comments. tools/libs: Clean up hard tabs. tools/libs/gnttab: Review and update doc comments. tools/libs/call: Update some log messages to not refer to xc. tools/libs/call: Avoid xc_memalign in netbsd and solaris backends tools/libs/foreignmemory: Mention restrictions on fork in docs. tools: Update CFLAGS for qemu-xen to allow it to use new libraries HACK: Update Config.mk to pull all the right bits from my xenbits trees .gitignore | 10 + Config.mk | 20 +- config/FreeBSD.mk | 2 - config/NetBSD.mk | 3 - config/NetBSDRump.mk | 1 - config/StdGNU.mk | 1 - config/SunOS.mk | 1 - stubdom/Makefile | 92 ++- stubdom/grub/Makefile | 1 + tools/Makefile | 18 +- tools/Rules.mk | 124 ++- tools/console/Makefile | 3 +- tools/console/daemon/io.c | 64 +- tools/console/daemon/utils.c | 1 - tools/console/daemon/utils.h | 1 + tools/libs/Makefile | 11 + tools/libs/call/Makefile | 67 ++ tools/libs/call/buffer.c | 192 +++++ tools/libs/call/core.c | 147 ++++ tools/libs/call/freebsd.c | 140 ++++ tools/libs/call/include/xencall.h | 84 ++ tools/libs/call/libxencall.map | 19 + tools/libs/call/linux.c | 132 +++ tools/libs/call/minios.c | 81 ++ tools/libs/call/netbsd.c | 121 +++ tools/libs/call/private.h | 68 ++ tools/libs/call/solaris.c | 97 +++ tools/libs/evtchn/Makefile | 67 ++ tools/libs/evtchn/core.c | 72 ++ tools/libs/evtchn/freebsd.c | 138 ++++ tools/libs/evtchn/include/xenevtchn.h | 148 ++++ tools/libs/evtchn/libxenevtchn.map | 14 + tools/libs/evtchn/linux.c | 136 ++++ tools/libs/evtchn/minios.c | 266 ++++++ tools/libs/evtchn/netbsd.c | 147 ++++ tools/libs/evtchn/private.h | 25 + tools/libs/evtchn/solaris.c | 135 ++++ tools/libs/foreignmemory/Makefile | 67 ++ tools/libs/foreignmemory/compat.c | 72 ++ tools/libs/foreignmemory/core.c | 71 ++ tools/libs/foreignmemory/freebsd.c | 135 ++++ .../libs/foreignmemory/include/xenforeignmemory.h | 79 ++ tools/libs/foreignmemory/libxenforeignmemory.map | 8 + tools/libs/foreignmemory/linux.c | 294 +++++++ tools/libs/foreignmemory/minios.c | 68 ++ tools/libs/foreignmemory/netbsd.c | 111 +++ tools/libs/foreignmemory/private.h | 47 ++ tools/libs/foreignmemory/solaris.c | 109 +++ tools/libs/gnttab/Makefile | 69 ++ tools/libs/gnttab/gntshr_core.c | 95 +++ tools/libs/gnttab/gntshr_unimp.c | 62 ++ tools/libs/gnttab/gnttab_core.c | 124 +++ tools/libs/gnttab/gnttab_unimp.c | 89 ++ tools/libs/gnttab/include/xengnttab.h | 219 +++++ tools/libs/gnttab/libxengnttab.map | 23 + tools/libs/gnttab/linux.c | 329 ++++++++ tools/libs/gnttab/minios.c | 117 +++ tools/libs/gnttab/private.h | 47 ++ tools/libs/toollog/Makefile | 62 ++ tools/{libxc => libs/toollog}/include/xentoollog.h | 10 + tools/libs/toollog/libxentoollog.map | 12 + tools/{libxc => libs/toollog}/xtl_core.c | 10 + tools/{libxc => libs/toollog}/xtl_logger_stdio.c | 12 +- tools/libvchan/Makefile | 8 +- tools/libvchan/init.c | 44 +- tools/libvchan/io.c | 20 +- tools/libvchan/libxenvchan.h | 9 +- tools/libxc/Makefile | 44 +- tools/libxc/include/xenctrl.h | 312 +------ tools/libxc/include/xenctrl_compat.h | 132 +++ tools/libxc/include/xenctrlosdep.h | 172 ---- tools/libxc/include/xenguest.h | 14 +- tools/libxc/xc_altp2m.c | 64 +- tools/libxc/xc_domain.c | 105 +-- tools/libxc/xc_evtchn.c | 54 +- tools/libxc/xc_evtchn_compat.c | 75 ++ tools/libxc/xc_flask.c | 8 +- tools/libxc/xc_foreign_memory.c | 99 +-- tools/libxc/xc_freebsd_osdep.c | 407 ---------- tools/libxc/xc_gnttab.c | 93 +-- tools/libxc/xc_gnttab_compat.c | 111 +++ tools/libxc/xc_hcall_buf.c | 138 +--- tools/libxc/xc_kexec.c | 36 +- tools/libxc/xc_linux_osdep.c | 898 --------------------- tools/libxc/xc_minios.c | 482 ----------- tools/libxc/xc_misc.c | 79 +- tools/libxc/xc_netbsd.c | 345 -------- tools/libxc/xc_private.c | 277 +------ tools/libxc/xc_private.h | 105 +-- tools/libxc/xc_solaris.c | 305 ------- tools/libxc/xc_sr_restore.c | 6 +- tools/libxc/xc_sr_save.c | 6 +- tools/libxc/xc_suspend.c | 18 +- tools/libxc/xc_tmem.c | 7 +- tools/libxc/xc_vm_event.c | 29 +- tools/libxc/xenctrl_osdep_ENOSYS.c | 210 ----- tools/libxc/xg_private.h | 3 +- tools/libxl/Makefile | 18 +- tools/libxl/libxl.c | 2 +- tools/libxl/libxl_dom_suspend.c | 4 +- tools/libxl/libxl_event.c | 14 +- tools/libxl/libxl_internal.h | 6 +- tools/misc/Makefile | 11 +- tools/misc/xen-hptool.c | 13 +- tools/misc/xen-lowmemd.c | 15 +- tools/misc/xen-mfndump.c | 1 + tools/ocaml/Makefile.rules | 26 +- tools/ocaml/libs/eventchn/Makefile | 4 +- tools/ocaml/libs/eventchn/xeneventchn_stubs.c | 20 +- tools/ocaml/libs/xc/xenctrl.ml | 2 - tools/ocaml/libs/xc/xenctrl.mli | 1 - tools/ocaml/libs/xc/xenctrl_stubs.c | 8 +- tools/ocaml/libs/xentoollog/Makefile | 6 +- tools/ocaml/libs/xentoollog/genlevels.py | 2 +- tools/ocaml/xenstored/domains.ml | 6 +- tools/ocaml/xenstored/xenstored.ml | 5 +- tools/python/setup.py | 10 +- tools/python/xen/lowlevel/xc/xc.c | 2 +- tools/tests/xen-access/xen-access.c | 2 +- tools/xcutils/Makefile | 4 +- tools/xenmon/Makefile | 2 + tools/xenmon/xenbaked.c | 33 +- tools/xenpaging/Makefile | 4 +- tools/xenpaging/pagein.c | 5 +- tools/xenpaging/xenpaging.c | 31 +- tools/xenpaging/xenpaging.h | 5 +- tools/xenstore/Makefile | 7 +- tools/xenstore/xenstored_core.c | 7 +- tools/xenstore/xenstored_core.h | 5 +- tools/xenstore/xenstored_domain.c | 49 +- tools/xenstore/xenstored_minios.c | 5 +- tools/xentrace/Makefile | 5 +- tools/xentrace/xenctx.c | 3 +- tools/xentrace/xentrace.c | 24 +- 134 files changed, 5777 insertions(+), 4295 deletions(-) create mode 100644 tools/libs/Makefile create mode 100644 tools/libs/call/Makefile create mode 100644 tools/libs/call/buffer.c create mode 100644 tools/libs/call/core.c create mode 100644 tools/libs/call/freebsd.c create mode 100644 tools/libs/call/include/xencall.h create mode 100644 tools/libs/call/libxencall.map create mode 100644 tools/libs/call/linux.c create mode 100644 tools/libs/call/minios.c create mode 100644 tools/libs/call/netbsd.c create mode 100644 tools/libs/call/private.h create mode 100644 tools/libs/call/solaris.c create mode 100644 tools/libs/evtchn/Makefile create mode 100644 tools/libs/evtchn/core.c create mode 100644 tools/libs/evtchn/freebsd.c create mode 100644 tools/libs/evtchn/include/xenevtchn.h create mode 100644 tools/libs/evtchn/libxenevtchn.map create mode 100644 tools/libs/evtchn/linux.c create mode 100644 tools/libs/evtchn/minios.c create mode 100644 tools/libs/evtchn/netbsd.c create mode 100644 tools/libs/evtchn/private.h create mode 100644 tools/libs/evtchn/solaris.c create mode 100644 tools/libs/foreignmemory/Makefile create mode 100644 tools/libs/foreignmemory/compat.c create mode 100644 tools/libs/foreignmemory/core.c create mode 100644 tools/libs/foreignmemory/freebsd.c create mode 100644 tools/libs/foreignmemory/include/xenforeignmemory.h create mode 100644 tools/libs/foreignmemory/libxenforeignmemory.map create mode 100644 tools/libs/foreignmemory/linux.c create mode 100644 tools/libs/foreignmemory/minios.c create mode 100644 tools/libs/foreignmemory/netbsd.c create mode 100644 tools/libs/foreignmemory/private.h create mode 100644 tools/libs/foreignmemory/solaris.c create mode 100644 tools/libs/gnttab/Makefile create mode 100644 tools/libs/gnttab/gntshr_core.c create mode 100644 tools/libs/gnttab/gntshr_unimp.c create mode 100644 tools/libs/gnttab/gnttab_core.c create mode 100644 tools/libs/gnttab/gnttab_unimp.c create mode 100644 tools/libs/gnttab/include/xengnttab.h create mode 100644 tools/libs/gnttab/libxengnttab.map create mode 100644 tools/libs/gnttab/linux.c create mode 100644 tools/libs/gnttab/minios.c create mode 100644 tools/libs/gnttab/private.h create mode 100644 tools/libs/toollog/Makefile rename tools/{libxc => libs/toollog}/include/xentoollog.h (97%) create mode 100644 tools/libs/toollog/libxentoollog.map rename tools/{libxc => libs/toollog}/xtl_core.c (95%) rename tools/{libxc => libs/toollog}/xtl_logger_stdio.c (97%) create mode 100644 tools/libxc/include/xenctrl_compat.h delete mode 100644 tools/libxc/include/xenctrlosdep.h create mode 100644 tools/libxc/xc_evtchn_compat.c delete mode 100644 tools/libxc/xc_freebsd_osdep.c create mode 100644 tools/libxc/xc_gnttab_compat.c delete mode 100644 tools/libxc/xc_linux_osdep.c delete mode 100644 tools/libxc/xenctrl_osdep_ENOSYS.c -- 2.1.4 _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |