diff options
Diffstat (limited to 'lib/bb/main.py')
-rwxr-xr-x | lib/bb/main.py | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/lib/bb/main.py b/lib/bb/main.py index 07972f69e..6e6a346a0 100755 --- a/lib/bb/main.py +++ b/lib/bb/main.py @@ -446,7 +446,15 @@ def setup_bitbake(configParams, configuration, extrafeatures=None): logger.info("Reconnecting to bitbake server...") if not os.path.exists(sockname): print("Previous bitbake instance shutting down?, waiting to retry...") - time.sleep(5) + i = 0 + lock = None + # Wait for 5s or until we can get the lock + while not lock and i < 50: + time.sleep(0.1) + _, lock = lockBitbake() + i += 1 + if lock: + bb.utils.unlockfile(lock) raise bb.server.process.ProcessTimeout("Bitbake still shutting down as socket exists but no lock?") if not configParams.server_only: try: |