diff options
author | Roger Pau Monne <roger.pau@citrix.com> | 2021-11-04 11:48:34 +0100 |
---|---|---|
committer | Ian Jackson <iwj@xenproject.org> | 2021-11-08 15:10:05 +0000 |
commit | 7379f9e10a3b13ec8bcea756384b2ace8af7064d (patch) | |
tree | e3a290f2f7c7a6970131006d6402ab702f146ccb /xen/include/public | |
parent | b36c23eada769f647e5352d5691f793be06afd62 (diff) |
gnttab: allow setting max version per-domain
Introduce a new domain create field so that toolstack can specify the
maximum grant table version usable by the domain. This is plumbed into
xl and settable by the user as max_grant_version.
Previously this was only settable on a per host basis using the
gnttab command line option.
Note the version is specified using 4 bits, which leaves room to
specify up to grant table version 15. Given that we only have 2 grant
table versions right now, and a new version is unlikely in the near
future using 4 bits seems more than enough.
xenstored stubdomains are limited to grant table v1 because the
current MiniOS code used to build them only has support for grants v1.
There are existing limits set for xenstored stubdomains at creation
time that already match the defaults in MiniOS.
Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
Acked-by: Christian Lindig <christian.lindig@citrix.com>
Reviewed-by: Ian Jackson <iwj@xenproject.org>
Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>
Release-Acked-by: Ian Jackson <iwj@xenproject.org>
Diffstat (limited to 'xen/include/public')
-rw-r--r-- | xen/include/public/domctl.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/xen/include/public/domctl.h b/xen/include/public/domctl.h index 51017b47bc..1c21d4dc75 100644 --- a/xen/include/public/domctl.h +++ b/xen/include/public/domctl.h @@ -97,6 +97,11 @@ struct xen_domctl_createdomain { int32_t max_grant_frames; int32_t max_maptrack_frames; +/* Grant version, use low 4 bits. */ +#define XEN_DOMCTL_GRANT_version_mask 0xf + + uint32_t grant_opts; + /* Per-vCPU buffer size in bytes. 0 to disable. */ uint32_t vmtrace_size; |