[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH v5 0/8] xen: better grant v2 support
Currently Linux has no support for grant v2 as this would reduce the maximum number of active grants by a factor of 2 compared to v1, because the number of possible grants are limited by the allowed number of grant frames and grant entries of v2 need twice as much bytes as those of v1. Unfortunately grant v2 is the only way to support either guests with more than 16TB memory size or PV guests with memory above the 16TB border, as grant v1 limits the frame number to be 32 bits wide. In order to remove the disadvantage of grant v2 this patch series adds support for setting per-domain values regarding grant limits. Additionally the default limit of grant frames is doubled in case of hosts with memory above the 16TB border. Changes in V5: - patch 6: add set_gnttab_limits to create_domain_common in xen.if (Daniel De Graaf) Changes in V4: - patch 3: make ret more local (Wei Liu) - patch 7: use domid_t (Wei Liu) - patch 8: rename configuration items to use max_ prefixes (Wei Liu) Changes in V3: - patch 1: update commit message - patch 3: move call of grant_table_init() from gnttab_setup_table() to gnttab_grow_table() (Paul Durrant) - patch 4: correct error message (Paul Durrant) - patch 6: rename *gnttbl* to *gnttab* (Paul Durrant) Changes in V2: - add per-domain grant limits instead of different v1 and v2 limits - double default limit for huge hosts Juergen Gross (8): xen: move XENMAPSPACE_grant_table code into grant_table.c xen: clean up grant_table.h xen: delay allocation of grant table sub structures xen: make grant resource limits per domain xen: double default grant frame limit for huge hosts xen: add new domctl hypercall to set grant table resource limits libxc: add libxc support for setting grant table resource limits libxl: add libxl support for setting grant table resource limits docs/man/xl.cfg.pod.5.in | 15 ++ tools/flask/policy/modules/dom0.te | 2 +- tools/flask/policy/modules/xen.if | 2 +- tools/libxc/include/xenctrl.h | 14 ++ tools/libxc/xc_domain.c | 13 ++ tools/libxl/libxl.h | 6 + tools/libxl/libxl_dom.c | 8 + tools/libxl/libxl_types.idl | 3 + tools/xl/xl_parse.c | 5 + tools/xl/xl_sxp.c | 2 + xen/arch/arm/mm.c | 36 +--- xen/arch/x86/mm.c | 41 +---- xen/common/domain.c | 17 +- xen/common/domctl.c | 6 + xen/common/grant_table.c | 354 +++++++++++++++++++++++++++--------- xen/include/asm-arm/grant_table.h | 7 + xen/include/asm-x86/grant_table.h | 5 + xen/include/public/domctl.h | 9 + xen/include/xen/grant_table.h | 91 +-------- xen/xsm/flask/hooks.c | 3 + xen/xsm/flask/policy/access_vectors | 2 + 21 files changed, 402 insertions(+), 239 deletions(-) -- 2.12.3 _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx https://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |