}
/* Temporarily add the hostdev to the domain definition. This is needed
- * because qemuDomainRequiresMlock() and qemuDomainGetMlockLimitBytes()
- * require the hostdev to be already part of the domain definition, but
- * other functions like qemuAssignDeviceHostdevAlias() used below expect
- * it *not* to be there. A better way to handle this would be nice */
+ * because qemuDomainAdjustMaxMemLock() requires the hostdev to be already
+ * part of the domain definition, but other functions like
+ * qemuAssignDeviceHostdevAlias() used below expect it *not* to be there.
+ * A better way to handle this would be nice */
vm->def->hostdevs[vm->def->nhostdevs++] = hostdev;
- if (qemuDomainRequiresMlock(vm->def)) {
- if (virProcessSetMaxMemLock(vm->pid,
- qemuDomainGetMlockLimitBytes(vm->def)) < 0) {
- vm->def->hostdevs[--(vm->def->nhostdevs)] = NULL;
- goto error;
- }
+ if (qemuDomainAdjustMaxMemLock(vm) < 0) {
+ vm->def->hostdevs[--(vm->def->nhostdevs)] = NULL;
+ goto error;
}
vm->def->hostdevs[--(vm->def->nhostdevs)] = NULL;
virJSONValuePtr props = NULL;
virObjectEventPtr event;
bool fix_balloon = false;
- bool mlock = false;
int id;
int ret = -1;
goto cleanup;
}
- mlock = qemuDomainRequiresMlock(vm->def);
-
- if (mlock &&
- virProcessSetMaxMemLock(vm->pid,
- qemuDomainGetMlockLimitBytes(vm->def)) < 0) {
- mlock = false;
+ if (qemuDomainAdjustMaxMemLock(vm) < 0) {
virJSONValueFree(props);
goto removedef;
}
mem = NULL;
/* reset the mlock limit */
- if (mlock) {
- virErrorPtr err = virSaveLastError();
- ignore_value(virProcessSetMaxMemLock(vm->pid,
- qemuDomainGetMlockLimitBytes(vm->def)));
- virSetError(err);
- virFreeError(err);
- }
+ virErrorPtr err = virSaveLastError();
+ ignore_value(qemuDomainAdjustMaxMemLock(vm));
+ virSetError(err);
+ virFreeError(err);
goto audit;
}
virDomainMemoryDefFree(mem);
/* decrease the mlock limit after memory unplug if necessary */
- if (qemuDomainRequiresMlock(vm->def))
- ignore_value(virProcessSetMaxMemLock(vm->pid,
- qemuDomainGetMlockLimitBytes(vm->def)));
+ ignore_value(qemuDomainAdjustMaxMemLock(vm));
return 0;
}