On Thu, Feb 19, 2015 at 19:37:33 -0500, John Ferlan wrote: > > OK - I peeked after looking at 24/24 to see how difficult this series > would be (and before soaking my brain cells in liquid refreshment)... > > The first two seemed OK and it doesn't appear there's anyone else > disagreeing... > > For this one though... > > On 02/16/2015 02:50 PM, Peter Krempa wrote: > > Add helper to compare initial sizes of indivitual NUMA nodes and the map > > of belonging vCPUs. Other configuration is not ABI. > > --- > > src/conf/domain_conf.c | 3 +++ > > src/conf/numa_conf.c | 37 +++++++++++++++++++++++++++++++++++++ > > src/conf/numa_conf.h | 3 +++ > > src/libvirt_private.syms | 1 + > > 4 files changed, 44 insertions(+) > > > > diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c > > index eee01b6..15d4fe0 100644 > > --- a/src/conf/domain_conf.c > > +++ b/src/conf/domain_conf.c > > @@ -15964,6 +15964,9 @@ virDomainDefCheckABIStability(virDomainDefPtr src, > > goto error; > > } > > > > + if (!virDomainNumaCheckABIStability(src->numa, dst->numa)) > > + goto error; > > + > > if (src->vcpus != dst->vcpus) { > > virReportError(VIR_ERR_CONFIG_UNSUPPORTED, > > _("Target domain vCPU count %d does not match source %d"), > > diff --git a/src/conf/numa_conf.c b/src/conf/numa_conf.c > > index 0a6f902..70044d5 100644 > > --- a/src/conf/numa_conf.c > > +++ b/src/conf/numa_conf.c > > @@ -814,6 +814,43 @@ virDomainNumaNew(void) > > } > > > > > > +bool > > +virDomainNumaCheckABIStability(virDomainNumaPtr src, > > + virDomainNumaPtr tgt) > > +{ > > + size_t i; > > + > > + if (virDomainNumaGetNodeCount(src) != virDomainNumaGetNodeCount(tgt)) { > > + virReportError(VIR_ERR_CONFIG_UNSUPPORTED, > > + _("Target NUMA node count '%zu' doesn't match " > > + "source '%zu'"), > > + virDomainNumaGetNodeCount(tgt), > > + virDomainNumaGetNodeCount(src)); > > + return false; > > + } > > + > > + for (i = 0; i < virDomainNumaGetNodeCount(src); i++) { > > + if (src->mem_nodes[i].mem != tgt->mem_nodes[i].mem) { > > Use virDomainNumaGetNodeMemorySize() ? > > > + virReportError(VIR_ERR_CONFIG_UNSUPPORTED, > > + _("Size of target NUMA node %zu (%llu) doesn't " > > + "match source (%llu)"), i, > > + tgt->mem_nodes[i].mem, src->mem_nodes[i].mem); > > + return false; > > + } > > + > > + if (!virBitmapEqual(src->mem_nodes[i].cpumask, > > + tgt->mem_nodes[i].cpumask)) { > > Use virDomainNumaGetNodeCpumask to access each cpumask bitmap ? > > > This seems reasonable to me... > > ACK with the accessor changes... I've changed to the accessor-based approach and pushed this one along with patch 1. Thanks. Peter
Attachment:
signature.asc
Description: Digital signature
-- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list