diff --git a/lib/cmdlib.py b/lib/cmdlib.py
index c931bb75572875ab1797c75701c1cd3a7f1c502b..54f632a76ccfba442b69472f37162ad2d8bd2dbd 100644
--- a/lib/cmdlib.py
+++ b/lib/cmdlib.py
@@ -3768,6 +3768,9 @@ class LUCreateInstance(LogicalUnit):
     del self.remove_locks[locking.LEVEL_INSTANCE]
     # Remove the temp. assignements for the instance's drbds
     self.cfg.ReleaseDRBDMinors(instance)
+    # Unlock all the nodes
+    self.context.glm.release(locking.LEVEL_NODE)
+    del self.acquired_locks[locking.LEVEL_NODE]
 
     if self.op.wait_for_sync:
       disk_abort = not _WaitForSync(self, iobj)