[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[xen staging] tools/xl: Remove the filelock when building VM if autoballooning is off



commit 4fb402b486121c0110dd8cbc2ef2791ab9c1af73
Author:     Dmitry Isaykin <isaikin-dmitry@xxxxxxxxx>
AuthorDate: Thu Apr 9 15:55:50 2020 +0100
Commit:     Wei Liu <wl@xxxxxxx>
CommitDate: Thu Apr 9 15:55:50 2020 +0100

    tools/xl: Remove the filelock when building VM if autoballooning is off
    
    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@xxxxxxxxx>
    Reviewed-by: Ian Jackson <ian.jackson@xxxxxxxxxxxxx>
---
 tools/xl/xl_vmcontrol.c | 14 +++++++++-----
 1 file changed, 9 insertions(+), 5 deletions(-)

diff --git a/tools/xl/xl_vmcontrol.c b/tools/xl/xl_vmcontrol.c
index 2e2d427492..17b4514c94 100644
--- a/tools/xl/xl_vmcontrol.c
+++ b/tools/xl/xl_vmcontrol.c
@@ -874,9 +874,11 @@ int create_domain(struct domain_create *dom_info)
 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)) {
@@ -939,7 +941,8 @@ start:
     if ( ret )
         goto error_out;
 
-    release_lock();
+    if (autoballoon)
+        release_lock();
 
     if (restore_fd_to_close >= 0) {
         if (close(restore_fd_to_close))
@@ -1113,7 +1116,8 @@ start:
     }
 
 error_out:
-    release_lock();
+    if (autoballoon)
+        release_lock();
     if (libxl_domid_valid_guest(domid)) {
         libxl_domain_destroy(ctx, domid, 0);
         domid = INVALID_DOMID;
--
generated by git-patchbot for /home/xen/git/xen.git#staging



 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.