summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xscripts/runqemu24
1 files changed, 14 insertions, 10 deletions
diff --git a/scripts/runqemu b/scripts/runqemu
index ba7c1b2461..8a417a7c24 100755
--- a/scripts/runqemu
+++ b/scripts/runqemu
@@ -1150,16 +1150,20 @@ to your build configuration.
1150 uid = os.getuid() 1150 uid = os.getuid()
1151 logger.info("Setting up tap interface under sudo") 1151 logger.info("Setting up tap interface under sudo")
1152 cmd = ('sudo', self.qemuifup, str(uid), str(gid), self.bindir_native) 1152 cmd = ('sudo', self.qemuifup, str(uid), str(gid), self.bindir_native)
1153 try: 1153 for _ in range(5):
1154 tap = subprocess.check_output(cmd).decode('utf-8').strip() 1154 try:
1155 except subprocess.CalledProcessError as e: 1155 tap = subprocess.check_output(cmd).decode('utf-8').strip()
1156 logger.error('Setting up tap device failed:\n%s\nRun runqemu-gen-tapdevs to manually create one.' % str(e)) 1156 except subprocess.CalledProcessError as e:
1157 sys.exit(1) 1157 logger.error('Setting up tap device failed:\n%s\nRun runqemu-gen-tapdevs to manually create one.' % str(e))
1158 lockfile = os.path.join(lockdir, tap) 1158 sys.exit(1)
1159 self.taplock = lockfile + '.lock' 1159 lockfile = os.path.join(lockdir, tap)
1160 self.acquire_taplock() 1160 self.taplock = lockfile + '.lock'
1161 self.cleantap = True 1161 if self.acquire_taplock():
1162 logger.debug('Created tap: %s' % tap) 1162 self.cleantap = True
1163 logger.debug('Created tap: %s' % tap)
1164 break
1165 else:
1166 tap = None
1163 1167
1164 if not tap: 1168 if not tap:
1165 logger.error("Failed to setup tap device. Run runqemu-gen-tapdevs to manually create.") 1169 logger.error("Failed to setup tap device. Run runqemu-gen-tapdevs to manually create.")