}
void
-virDomainVcpuPinDel(virDomainDefPtr def, int vcpu)
+virDomainPinDel(virDomainPinDefPtr **pindef_list,
+ size_t *npin,
+ int id)
{
int n;
- virDomainPinDefPtr *vcpupin_list = def->cputune.vcpupin;
- for (n = 0; n < def->cputune.nvcpupin; n++) {
- if (vcpupin_list[n]->id == vcpu) {
- virBitmapFree(vcpupin_list[n]->cpumask);
- VIR_FREE(vcpupin_list[n]);
- VIR_DELETE_ELEMENT(def->cputune.vcpupin, n, def->cputune.nvcpupin);
+ for (n = 0; n < *npin; n++) {
+ if ((*pindef_list)[n]->id == id) {
+ virBitmapFree((*pindef_list)[n]->cpumask);
+ VIR_FREE((*pindef_list)[n]);
+ VIR_DELETE_ELEMENT(*pindef_list, n, *npin);
return;
}
}
int maplen,
int id);
-void virDomainVcpuPinDel(virDomainDefPtr def, int vcpu);
+void virDomainPinDel(virDomainPinDefPtr **pindef_list,
+ size_t *npin,
+ int vcpu);
int virDomainEmulatorPinAdd(virDomainDefPtr def,
unsigned char *cpumap,
virDomainPinDefArrayFree;
virDomainPinDefCopy;
virDomainPinDefFree;
+virDomainPinDel;
virDomainPinFind;
virDomainPinIsDuplicate;
virDomainPMSuspendedReasonTypeFromString;
virDomainTPMDefFree;
virDomainTPMModelTypeFromString;
virDomainTPMModelTypeToString;
-virDomainVcpuPinDel;
virDomainVideoDefaultRAM;
virDomainVideoDefaultType;
virDomainVideoDefFree;
/* full bitmap means reset the settings (if any). */
if (virBitmapIsAllSet(pcpumap)) {
- virDomainVcpuPinDel(targetDef, vcpu);
+ virDomainPinDel(&targetDef->cputune.vcpupin,
+ &targetDef->cputune.nvcpupin,
+ vcpu);
goto done;
}
}
/* Free vcpupin setting */
- virDomainVcpuPinDel(vm->def, i);
+ virDomainPinDel(&vm->def->cputune.vcpupin,
+ &vm->def->cputune.nvcpupin,
+ i);
}
}
/* remove vcpupin entries for vcpus that were unplugged */
if (nvcpus < persistentDef->vcpus) {
for (i = persistentDef->vcpus; i >= nvcpus; i--)
- virDomainVcpuPinDel(persistentDef, i);
+ virDomainPinDel(&persistentDef->cputune.vcpupin,
+ &persistentDef->cputune.nvcpupin,
+ i);
}
if (maximum) {
}
if (doReset) {
- virDomainVcpuPinDel(vm->def, vcpu);
+ virDomainPinDel(&vm->def->cputune.vcpupin,
+ &vm->def->cputune.nvcpupin,
+ vcpu);
} else {
if (vm->def->cputune.vcpupin)
virDomainPinDefArrayFree(vm->def->cputune.vcpupin,
if (flags & VIR_DOMAIN_AFFECT_CONFIG) {
if (doReset) {
- virDomainVcpuPinDel(persistentDef, vcpu);
+ virDomainPinDel(&persistentDef->cputune.vcpupin,
+ &persistentDef->cputune.nvcpupin,
+ vcpu);
} else {
if (!persistentDef->cputune.vcpupin) {
if (VIR_ALLOC(persistentDef->cputune.vcpupin) < 0)