On 5/23/19 11:34 AM, Wang Huaqiang wrote:
Let 'virDomainResctrlVcpuMatch' return a pointer of
@virDomainResctrlDefPtr in its third parameter.
Signed-off-by: Wang Huaqiang <huaqiang.wang(a)intel.com>
---
src/conf/domain_conf.c | 33 ++++++++++++++++++---------------
1 file changed, 18 insertions(+), 15 deletions(-)
diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c
index dcfd2dd..b0f5d80 100644
--- a/src/conf/domain_conf.c
+++ b/src/conf/domain_conf.c
@@ -18992,7 +18992,7 @@ virDomainResctrlParseVcpus(virDomainDefPtr def,
static int
virDomainResctrlVcpuMatch(virDomainDefPtr def,
virBitmapPtr vcpus,
- virResctrlAllocPtr *alloc)
+ virDomainResctrlDefPtr *resctrl)
{
ssize_t i = 0;
@@ -19001,7 +19001,7 @@ virDomainResctrlVcpuMatch(virDomainDefPtr def,
* Just updating memory allocation information of that group
*/
if (virBitmapEqual(def->resctrls[i]->vcpus, vcpus)) {
- *alloc = virObjectRef(def->resctrls[i]->alloc);
+ *resctrl = def->resctrls[i];
break;
}
if (virBitmapOverlaps(def->resctrls[i]->vcpus, vcpus)) {
@@ -19331,19 +19331,19 @@ virDomainCachetuneDefParse(virDomainDefPtr def,
return -1;
}
- if (virDomainResctrlVcpuMatch(def, vcpus, &alloc) < 0)
+ if (virDomainResctrlVcpuMatch(def, vcpus, &resctrl) < 0)
return -1;
- if (!alloc) {
- alloc = virResctrlAllocNew();
- if (!alloc)
- return -1;
- } else {
+ if (resctrl) {
virReportError(VIR_ERR_XML_ERROR, "%s",
_("Identical vcpus in cachetunes found"));
return -1;
}
+ alloc = virResctrlAllocNew();
+ if (!alloc)
+ return -1;
Or simply:
if (!(alloc = virResctrlAllocNew()))
return -1;
Here and in the rest of the patches.
+
for (i = 0; i < n; i++) {
if (virDomainCachetuneDefParseCache(ctxt, nodes[i], alloc) < 0)
return -1;
Michal