From: Eric Blake <eblake@redhat.com>
To: Yang Zhong <yang.zhong@intel.com>
Cc: pbonzini@redhat.com, jarkko@kernel.org, philmd@redhat.com,
qemu-devel@nongnu.org, armbru@redhat.com
Subject: Re: [PATCH v3 3/5] numa: Support SGX numa in the monitor and Libvirt interfaces
Date: Wed, 10 Nov 2021 10:55:40 -0600 [thread overview]
Message-ID: <20211110165540.souq5vgqtfn2hsft@redhat.com> (raw)
In-Reply-To: <20211101162009.62161-4-yang.zhong@intel.com>
On Mon, Nov 01, 2021 at 12:20:07PM -0400, Yang Zhong wrote:
> Add the SGXEPCSection list into SGXInfo to show the multiple
> SGX EPC sections detailed info, not the total size like before.
> This patch can enable numa support for 'info sgx' command and
> QMP interfaces. The new interfaces show each EPC section info
> in one numa node. Libvirt can use QMP interface to get the
> detailed host SGX EPC capabilities to decide how to allocate
> host EPC sections to guest.
>
> (qemu) info sgx
> SGX support: enabled
> SGX1 support: enabled
> SGX2 support: enabled
> FLC support: enabled
> NUMA node #0: size=67108864
> NUMA node #1: size=29360128
>
> The QMP interface show:
> (QEMU) query-sgx
> {"return": {"sgx": true, "sgx2": true, "sgx1": true, "sections": \
> [{"node": 0, "size": 67108864}, {"node": 1, "size": 29360128}], "flc": true}}
>
> (QEMU) query-sgx-capabilities
> {"return": {"sgx": true, "sgx2": true, "sgx1": true, "sections": \
> [{"node": 0, "size": 17070817280}, {"node": 1, "size": 17079205888}], "flc": true}}
Other than the different "size" values, how do these commands differ?
>
> Signed-off-by: Yang Zhong <yang.zhong@intel.com>
> ---
> qapi/misc-target.json | 19 ++++++++++++++--
> hw/i386/sgx.c | 51 +++++++++++++++++++++++++++++++++++--------
> 2 files changed, 59 insertions(+), 11 deletions(-)
>
> diff --git a/qapi/misc-target.json b/qapi/misc-target.json
> index 5aa2b95b7d..1022aa0184 100644
> --- a/qapi/misc-target.json
> +++ b/qapi/misc-target.json
> @@ -337,6 +337,21 @@
> 'if': 'TARGET_ARM' }
>
>
> +##
> +# @SGXEPCSection:
> +#
> +# Information about intel SGX EPC section info
> +#
> +# @node: the numa node
> +#
> +# @size: the size of epc section
> +#
> +# Since: 6.2
Are we still trying to cram this into 6.2, or is now slipping into 7.0?
> +##
> +{ 'struct': 'SGXEPCSection',
> + 'data': { 'node': 'int',
> + 'size': 'uint64'}}
> +
> ##
> # @SGXInfo:
> #
> @@ -350,7 +365,7 @@
> #
> # @flc: true if FLC is supported
> #
> -# @section-size: The EPC section size for guest
> +# @sections: The EPC sections info for guest
> #
> # Since: 6.2
> ##
> @@ -359,7 +374,7 @@
> 'sgx1': 'bool',
> 'sgx2': 'bool',
> 'flc': 'bool',
> - 'section-size': 'uint64'},
> + 'sections': ['SGXEPCSection']},
This would be an incompatible change. As long as 6.2 isn't released,
we can do that; but once it is, we need to be more careful about
changing the QMP spec.
> 'if': 'TARGET_I386' }
>
> ##
> diff --git a/hw/i386/sgx.c b/hw/i386/sgx.c
> index 9a77519609..b5b710a556 100644
> --- a/hw/i386/sgx.c
> +++ b/hw/i386/sgx.c
> @@ -76,11 +76,13 @@ static uint64_t sgx_calc_section_metric(uint64_t low, uint64_t high)
> ((high & MAKE_64BIT_MASK(0, 20)) << 32);
> }
>
> -static uint64_t sgx_calc_host_epc_section_size(void)
> +static SGXEPCSectionList *sgx_calc_host_epc_sections(void)
...
--
Eric Blake, Principal Software Engineer
Red Hat, Inc. +1-919-301-3266
Virtualization: qemu.org | libvirt.org
next prev parent reply other threads:[~2021-11-10 17:00 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-11-01 16:20 [PATCH v3 0/5] SGX NUMA support plus vepc reset Yang Zhong
2021-11-01 16:20 ` [PATCH v3 1/5] numa: Enable numa for SGX EPC sections Yang Zhong
2021-11-01 16:20 ` [PATCH v3 2/5] monitor: Support 'info numa' command Yang Zhong
2021-11-01 16:20 ` [PATCH v3 3/5] numa: Support SGX numa in the monitor and Libvirt interfaces Yang Zhong
2021-11-10 16:55 ` Eric Blake [this message]
2021-11-11 6:18 ` Yang Zhong
2021-11-11 7:55 ` Philippe Mathieu-Daudé
2021-11-11 8:07 ` Yang Zhong
2021-11-11 7:39 ` Paolo Bonzini
2021-11-01 16:20 ` [PATCH v3 4/5] doc: Add the SGX numa description Yang Zhong
2021-11-01 16:20 ` [PATCH v3 5/5] sgx: Reset the vEPC regions during VM reboot Yang Zhong
2021-11-10 12:52 ` [PATCH v3 0/5] SGX NUMA support plus vepc reset Paolo Bonzini
2021-11-10 12:56 ` Yang Zhong
2021-11-10 16:07 ` Paolo Bonzini
2021-11-11 6:20 ` Yang Zhong
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20211110165540.souq5vgqtfn2hsft@redhat.com \
--to=eblake@redhat.com \
--cc=armbru@redhat.com \
--cc=jarkko@kernel.org \
--cc=pbonzini@redhat.com \
--cc=philmd@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=yang.zhong@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).