[OE-core] [PATCH 1/1] runqemu: fix a race issue on lockdir
Robert Yang
liezhi.yang at windriver.com
Wed Sep 14 09:45:57 UTC 2016
There might be a race issue when multi runqemu processess are
running at the same time:
| Traceback (most recent call last):
| File "/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-ipk/build/scripts/runqemu", line 920, in <module>
| ret = main()
| File "/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-ipk/build/scripts/runqemu", line 911, in main
| config.setup_network()
| File "/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-ipk/build/scripts/runqemu", line 760, in setup_network
| self.setup_tap()
| File "/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-ipk/build/scripts/runqemu", line 697, in setup_tap
| os.mkdir(lockdir)
| FileExistsError: [Errno 17] File exists: '/tmp/qemu-tap-locks'
Signed-off-by: Robert Yang <liezhi.yang at windriver.com>
---
scripts/runqemu | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/scripts/runqemu b/scripts/runqemu
index 9af13f3..b6bc0ba 100755
--- a/scripts/runqemu
+++ b/scripts/runqemu
@@ -694,7 +694,12 @@ class BaseConfig(object):
raise Exception("runqemu-ifup, runqemu-ifdown or ip not found")
if not os.path.exists(lockdir):
- os.mkdir(lockdir)
+ # There might be a race issue when multi runqemu processess are
+ # running at the same time.
+ try:
+ os.mkdir(lockdir)
+ except FileExistsError:
+ pass
cmd = '%s link' % ip
logger.info('Running %s...' % cmd)
--
2.9.0
More information about the Openembedded-core
mailing list