|
@@ -218,7 +218,7 @@ class BaseConfig(object):
|
|
|
self.tcpserial_portnum = ''
|
|
|
self.custombiosdir = ''
|
|
|
self.lock = ''
|
|
|
- self.lock_descriptor = ''
|
|
|
+ self.lock_descriptor = None
|
|
|
self.bitbake_e = ''
|
|
|
self.snapshot = False
|
|
|
self.fstypes = ('ext2', 'ext3', 'ext4', 'jffs2', 'nfs', 'btrfs',
|
|
@@ -252,13 +252,17 @@ class BaseConfig(object):
|
|
|
logger.info(msg)
|
|
|
if self.lock_descriptor:
|
|
|
self.lock_descriptor.close()
|
|
|
+ self.lock_descriptor = None
|
|
|
return False
|
|
|
return True
|
|
|
|
|
|
def release_lock(self):
|
|
|
- fcntl.flock(self.lock_descriptor, fcntl.LOCK_UN)
|
|
|
- self.lock_descriptor.close()
|
|
|
- os.remove(self.lock)
|
|
|
+ if self.lock_descriptor:
|
|
|
+ logger.debug("Releasing lockfile for tap device '%s'" % self.tap)
|
|
|
+ fcntl.flock(self.lock_descriptor, fcntl.LOCK_UN)
|
|
|
+ self.lock_descriptor.close()
|
|
|
+ os.remove(self.lock)
|
|
|
+ self.lock_descriptor = None
|
|
|
|
|
|
def get(self, key):
|
|
|
if key in self.d:
|
|
@@ -1235,9 +1239,7 @@ class BaseConfig(object):
|
|
|
cmd = 'sudo %s %s %s' % (self.qemuifdown, self.tap, self.bindir_native)
|
|
|
logger.debug('Running %s' % cmd)
|
|
|
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:
|
|
|
logger.info("Shutting down the userspace NFS server...")
|