The presence of this filelock does not allow building several VMs at the same
time. This filelock was added to prevent other xl instances from using memory
freed for the currently building VM in autoballoon mode.
Signed-off-by: Dmitry Isaykin <isaikin-dmitry@yandex.ru>
Reviewed-by: Ian Jackson <ian.jackson@eu.citrix.com>
start:
assert(domid == INVALID_DOMID);
- rc = acquire_lock();
- if (rc < 0)
- goto error_out;
+ if (autoballoon) {
+ rc = acquire_lock();
+ if (rc < 0)
+ goto error_out;
+ }
if (domid_soft_reset == INVALID_DOMID) {
if (!freemem(domid, &d_config)) {
if ( ret )
goto error_out;
- release_lock();
+ if (autoballoon)
+ release_lock();
if (restore_fd_to_close >= 0) {
if (close(restore_fd_to_close))
}
error_out:
- release_lock();
+ if (autoballoon)
+ release_lock();
if (libxl_domid_valid_guest(domid)) {
libxl_domain_destroy(ctx, domid, 0);
domid = INVALID_DOMID;