mirror of
https://git.yoctoproject.org/poky
synced 2026-06-01 13:09:50 +00:00
scripts/runqemu: Tidy up lock handling code
Various tweaks: - Balance up the aquire/release functions - Use debug messge for both acquiring and release message for consistency in logs - Use None instead of an empty string - Reset the value of the field if we don't have the lock any more (From OE-Core rev: d3c052e6ccd81d544b23a3bee80ba00cafaedbbd) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
+5
-3
@@ -218,7 +218,7 @@ class BaseConfig(object):
|
|||||||
self.tcpserial_portnum = ''
|
self.tcpserial_portnum = ''
|
||||||
self.custombiosdir = ''
|
self.custombiosdir = ''
|
||||||
self.lock = ''
|
self.lock = ''
|
||||||
self.lock_descriptor = ''
|
self.lock_descriptor = None
|
||||||
self.bitbake_e = ''
|
self.bitbake_e = ''
|
||||||
self.snapshot = False
|
self.snapshot = False
|
||||||
self.fstypes = ('ext2', 'ext3', 'ext4', 'jffs2', 'nfs', 'btrfs',
|
self.fstypes = ('ext2', 'ext3', 'ext4', 'jffs2', 'nfs', 'btrfs',
|
||||||
@@ -252,13 +252,17 @@ class BaseConfig(object):
|
|||||||
logger.info(msg)
|
logger.info(msg)
|
||||||
if self.lock_descriptor:
|
if self.lock_descriptor:
|
||||||
self.lock_descriptor.close()
|
self.lock_descriptor.close()
|
||||||
|
self.lock_descriptor = None
|
||||||
return False
|
return False
|
||||||
return True
|
return True
|
||||||
|
|
||||||
def release_lock(self):
|
def release_lock(self):
|
||||||
|
if self.lock_descriptor:
|
||||||
|
logger.debug("Releasing lockfile for tap device '%s'" % self.tap)
|
||||||
fcntl.flock(self.lock_descriptor, fcntl.LOCK_UN)
|
fcntl.flock(self.lock_descriptor, fcntl.LOCK_UN)
|
||||||
self.lock_descriptor.close()
|
self.lock_descriptor.close()
|
||||||
os.remove(self.lock)
|
os.remove(self.lock)
|
||||||
|
self.lock_descriptor = None
|
||||||
|
|
||||||
def get(self, key):
|
def get(self, key):
|
||||||
if key in self.d:
|
if key in self.d:
|
||||||
@@ -1232,8 +1236,6 @@ class BaseConfig(object):
|
|||||||
cmd = 'sudo %s %s %s' % (self.qemuifdown, self.tap, self.bindir_native)
|
cmd = 'sudo %s %s %s' % (self.qemuifdown, self.tap, self.bindir_native)
|
||||||
logger.debug('Running %s' % cmd)
|
logger.debug('Running %s' % cmd)
|
||||||
subprocess.check_call(cmd, shell=True)
|
subprocess.check_call(cmd, shell=True)
|
||||||
if self.lock_descriptor:
|
|
||||||
logger.info("Releasing lockfile for tap device '%s'" % self.tap)
|
|
||||||
self.release_lock()
|
self.release_lock()
|
||||||
|
|
||||||
if self.nfs_running:
|
if self.nfs_running:
|
||||||
|
|||||||
Reference in New Issue
Block a user