[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH v2 07/12] xen/domctl: Remove XEN_DOMCTL_set_gnttab_limits
Now that XEN_DOMCTL_createdomain handles the grant table limits, remove XEN_DOMCTL_set_gnttab_limits (including XSM hooks and libxc wrappers). Signed-off-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx> Acked-by: Daniel De Graaf <dgdegra@xxxxxxxxxxxxx> Acked-by: Wei Liu <wei.liu2@xxxxxxxxxx> --- CC: Jan Beulich <JBeulich@xxxxxxxx> v2: * Split/rearrange to avoid the post-domain-create error path. Retain appropriate acks. --- tools/flask/policy/modules/dom0.te | 2 +- tools/flask/policy/modules/xen.if | 2 +- tools/helpers/init-xenstore-domain.c | 7 ------- tools/libxc/include/xenctrl.h | 13 ------------- tools/libxc/xc_domain.c | 13 ------------- tools/libxl/libxl_dom.c | 6 ------ xen/common/domctl.c | 5 ----- xen/include/public/domctl.h | 8 +------- xen/xsm/flask/hooks.c | 3 --- xen/xsm/flask/policy/access_vectors | 2 -- 10 files changed, 3 insertions(+), 58 deletions(-) diff --git a/tools/flask/policy/modules/dom0.te b/tools/flask/policy/modules/dom0.te index 4eb3843..dfdcdcd 100644 --- a/tools/flask/policy/modules/dom0.te +++ b/tools/flask/policy/modules/dom0.te @@ -39,7 +39,7 @@ allow dom0_t dom0_t:domain { }; allow dom0_t dom0_t:domain2 { set_cpuid gettsc settsc setscheduler set_vnumainfo - get_vnumainfo psr_cmt_op psr_alloc set_gnttab_limits + get_vnumainfo psr_cmt_op psr_alloc }; allow dom0_t dom0_t:resource { add remove }; diff --git a/tools/flask/policy/modules/xen.if b/tools/flask/policy/modules/xen.if index 61b0e76..4e06cfc 100644 --- a/tools/flask/policy/modules/xen.if +++ b/tools/flask/policy/modules/xen.if @@ -52,7 +52,7 @@ define(`create_domain_common', ` settime setdomainhandle getvcpucontext set_misc_info }; allow $1 $2:domain2 { set_cpuid settsc setscheduler setclaim set_vnumainfo get_vnumainfo cacheflush - psr_cmt_op psr_alloc soft_reset set_gnttab_limits + psr_cmt_op psr_alloc soft_reset resource_map }; allow $1 $2:security check_context; allow $1 $2:shadow enable; diff --git a/tools/helpers/init-xenstore-domain.c b/tools/helpers/init-xenstore-domain.c index cd27edc..4771750 100644 --- a/tools/helpers/init-xenstore-domain.c +++ b/tools/helpers/init-xenstore-domain.c @@ -112,13 +112,6 @@ static int build(xc_interface *xch) fprintf(stderr, "xc_domain_setmaxmem failed\n"); goto err; } - rv = xc_domain_set_gnttab_limits(xch, domid, config.max_grant_frames, - config.max_maptrack_frames); - if ( rv ) - { - fprintf(stderr, "xc_domain_set_gnttab_limits failed\n"); - goto err; - } rv = xc_domain_set_memmap_limit(xch, domid, limit_kb); if ( rv ) { diff --git a/tools/libxc/include/xenctrl.h b/tools/libxc/include/xenctrl.h index c626984..bb75bcc 100644 --- a/tools/libxc/include/xenctrl.h +++ b/tools/libxc/include/xenctrl.h @@ -1081,19 +1081,6 @@ int xc_domain_set_access_required(xc_interface *xch, */ int xc_domain_set_virq_handler(xc_interface *xch, uint32_t domid, int virq); -/** - * Set the maximum number of grant frames and maptrack frames a domain - * can have. Must be used at domain setup time and only then. - * - * @param xch a handle to an open hypervisor interface - * @param domid the domain id - * @param grant_frames max. number of grant frames - * @param maptrack_frames max. number of maptrack frames - */ -int xc_domain_set_gnttab_limits(xc_interface *xch, uint32_t domid, - uint32_t grant_frames, - uint32_t maptrack_frames); - /* * CPUPOOL MANAGEMENT FUNCTIONS */ diff --git a/tools/libxc/xc_domain.c b/tools/libxc/xc_domain.c index 2bc695c..e8d0734 100644 --- a/tools/libxc/xc_domain.c +++ b/tools/libxc/xc_domain.c @@ -2256,19 +2256,6 @@ int xc_domain_set_virq_handler(xc_interface *xch, uint32_t domid, int virq) return do_domctl(xch, &domctl); } -int xc_domain_set_gnttab_limits(xc_interface *xch, uint32_t domid, - uint32_t grant_frames, - uint32_t maptrack_frames) -{ - DECLARE_DOMCTL; - - domctl.cmd = XEN_DOMCTL_set_gnttab_limits; - domctl.domain = domid; - domctl.u.set_gnttab_limits.grant_frames = grant_frames; - domctl.u.set_gnttab_limits.maptrack_frames = maptrack_frames; - return do_domctl(xch, &domctl); -} - /* Plumbing Xen with vNUMA topology */ int xc_domain_setvnuma(xc_interface *xch, uint32_t domid, diff --git a/tools/libxl/libxl_dom.c b/tools/libxl/libxl_dom.c index eb401cf..8a8a32c 100644 --- a/tools/libxl/libxl_dom.c +++ b/tools/libxl/libxl_dom.c @@ -358,12 +358,6 @@ int libxl__build_pre(libxl__gc *gc, uint32_t domid, return ERROR_FAIL; } - if (xc_domain_set_gnttab_limits(ctx->xch, domid, info->max_grant_frames, - info->max_maptrack_frames) != 0) { - LOG(ERROR, "Couldn't set grant table limits"); - return ERROR_FAIL; - } - /* * Check if the domain has any CPU or node affinity already. If not, try * to build up the latter via automatic NUMA placement. In fact, in case diff --git a/xen/common/domctl.c b/xen/common/domctl.c index 0ef554a..58e51b2 100644 --- a/xen/common/domctl.c +++ b/xen/common/domctl.c @@ -1129,11 +1129,6 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xen_domctl_t) u_domctl) copyback = 1; break; - case XEN_DOMCTL_set_gnttab_limits: - ret = grant_table_set_limits(d, op->u.set_gnttab_limits.grant_frames, - op->u.set_gnttab_limits.maptrack_frames); - break; - default: ret = arch_do_domctl(op, d, u_domctl); break; diff --git a/xen/include/public/domctl.h b/xen/include/public/domctl.h index 676e686..e01fe06 100644 --- a/xen/include/public/domctl.h +++ b/xen/include/public/domctl.h @@ -1069,11 +1069,6 @@ struct xen_domctl_psr_alloc { uint64_t data; /* IN/OUT */ }; -struct xen_domctl_set_gnttab_limits { - uint32_t grant_frames; /* IN */ - uint32_t maptrack_frames; /* IN */ -}; - /* XEN_DOMCTL_vuart_op */ struct xen_domctl_vuart_op { #define XEN_DOMCTL_VUART_OP_INIT 0 @@ -1172,7 +1167,7 @@ struct xen_domctl { #define XEN_DOMCTL_monitor_op 77 #define XEN_DOMCTL_psr_alloc 78 #define XEN_DOMCTL_soft_reset 79 -#define XEN_DOMCTL_set_gnttab_limits 80 +/* #define XEN_DOMCTL_set_gnttab_limits 80 - Moved into XEN_DOMCTL_createdomain */ #define XEN_DOMCTL_vuart_op 81 #define XEN_DOMCTL_gdbsx_guestmemio 1000 #define XEN_DOMCTL_gdbsx_pausevcpu 1001 @@ -1233,7 +1228,6 @@ struct xen_domctl { struct xen_domctl_psr_cmt_op psr_cmt_op; struct xen_domctl_monitor_op monitor_op; struct xen_domctl_psr_alloc psr_alloc; - struct xen_domctl_set_gnttab_limits set_gnttab_limits; struct xen_domctl_vuart_op vuart_op; uint8_t pad[128]; } u; diff --git a/xen/xsm/flask/hooks.c b/xen/xsm/flask/hooks.c index a4fbe62..500af2c 100644 --- a/xen/xsm/flask/hooks.c +++ b/xen/xsm/flask/hooks.c @@ -742,9 +742,6 @@ static int flask_domctl(struct domain *d, int cmd) case XEN_DOMCTL_soft_reset: return current_has_perm(d, SECCLASS_DOMAIN2, DOMAIN2__SOFT_RESET); - case XEN_DOMCTL_set_gnttab_limits: - return current_has_perm(d, SECCLASS_DOMAIN2, DOMAIN2__SET_GNTTAB_LIMITS); - default: return avc_unknown_permission("domctl", cmd); } diff --git a/xen/xsm/flask/policy/access_vectors b/xen/xsm/flask/policy/access_vectors index b768870..d01a7a0 100644 --- a/xen/xsm/flask/policy/access_vectors +++ b/xen/xsm/flask/policy/access_vectors @@ -246,8 +246,6 @@ class domain2 mem_sharing # XEN_DOMCTL_psr_alloc psr_alloc -# XEN_DOMCTL_set_gnttab_limits - set_gnttab_limits # XENMEM_resource_map resource_map } -- 2.1.4 _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |