On 7/1/22 21:14, Lin Yang wrote:
From: Haibin Huang <haibin.huang(a)intel.com>
Signed-off-by: Michal Privoznik <mprivozn(a)redhat.com>
Signed-off-by: Haibin Huang <haibin.huang(a)intel.com>
---
src/conf/domain_capabilities.c | 10 ++++++++++
src/conf/domain_capabilities.h | 24 ++++++++++++++++++++++++
src/libvirt_private.syms | 1 +
3 files changed, 35 insertions(+)
diff --git a/src/conf/domain_capabilities.c b/src/conf/domain_capabilities.c
index 895e8d00e8..27f3fb8d36 100644
--- a/src/conf/domain_capabilities.c
+++ b/src/conf/domain_capabilities.c
@@ -76,6 +76,16 @@ virSEVCapabilitiesFree(virSEVCapability *cap)
}
+void
+virSGXCapabilitiesFree(virSGXCapability *cap)
+{
+ if (!cap)
+ return;
+
This leaks cap->pSections.
+ g_free(cap);
+}
+
+
static void
virDomainCapsDispose(void *obj)
{
diff --git a/src/conf/domain_capabilities.h b/src/conf/domain_capabilities.h
index f2eed80b15..dac1098e98 100644
--- a/src/conf/domain_capabilities.h
+++ b/src/conf/domain_capabilities.h
@@ -192,6 +192,24 @@ struct _virSEVCapability {
unsigned int max_es_guests;
};
+typedef struct _virSection virSection;
+typedef virSection *virSectionPtr;
No, if we can help it I'd rather avoid introducing virXXXPtr typedef.
We've worked hard to get rid of them and I don't quite see a reason to
reintroduce them.
+struct _virSection {
+ unsigned long long size;
+ unsigned int node;
While it's true that QEMU with its current code does not ever report a
negative number for 'node', at the QAPI level it's declared as signed
integer and thus we ought to reflect that.
+};
+
+typedef struct _virSGXCapability virSGXCapability;
+typedef virSGXCapability *virSGXCapabilityPtr;
+struct _virSGXCapability {
+ bool flc;
+ bool sgx1;
+ bool sgx2;
+ unsigned long long section_size;
+ size_t nSections;
+ virSectionPtr pSections;
We tend to use: 'nitems' and 'items', or 'nsections' and
'sections' in
cases like this.
+};
+
Michal