diff --git a/gns3server/modules/dynamips/__init__.py b/gns3server/modules/dynamips/__init__.py index e01fc388..55376ed2 100644 --- a/gns3server/modules/dynamips/__init__.py +++ b/gns3server/modules/dynamips/__init__.py @@ -105,6 +105,7 @@ class Dynamips(BaseManager): _VM_CLASS = DynamipsVM _DEVICE_CLASS = DynamipsDevice + ghost_ios_lock = asyncio.Lock() def __init__(self): @@ -330,7 +331,8 @@ class Dynamips(BaseManager): ghost_ios_support = self.config.get_section_config("Dynamips").get("ghost_ios_support", True) if ghost_ios_support: - yield from self._set_ghost_ios(vm) + with (yield from Dynamips.ghost_ios_lock): + yield from self._set_ghost_ios(vm) @asyncio.coroutine def create_nio(self, node, nio_settings):