From: Robert Yang <liezhi.yang@windriver.com>
To: <openembedded-core@lists.openembedded.org>
Subject: [PATCH 3/6] runqemu: use self.rootfs to replace self.nfs_dir
Date: Wed, 5 Apr 2017 23:41:35 -0700 [thread overview]
Message-ID: <ae5280da253521b56d2ee710534d5710cf88a162.1491460816.git.liezhi.yang@windriver.com> (raw)
In-Reply-To: <cover.1491460816.git.liezhi.yang@windriver.com>
We can use self.rootfs as self.nfs_dir when self.fstype is nfs, this can
reduce the code's complexity and we can re-use the code of checking
ROOTFS conflictions.
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
---
scripts/runqemu | 28 +++++++++++++---------------
1 file changed, 13 insertions(+), 15 deletions(-)
diff --git a/scripts/runqemu b/scripts/runqemu
index 71e3cdbe80..23a344da35 100755
--- a/scripts/runqemu
+++ b/scripts/runqemu
@@ -178,7 +178,6 @@ class BaseConfig(object):
self.qemu_opt = ''
self.qemu_opt_script = ''
- self.nfs_dir = ''
self.clean_nfs_dir = False
self.nfs_server = ''
self.rootfs = ''
@@ -284,12 +283,11 @@ class BaseConfig(object):
def check_arg_nfs(self, p):
if os.path.isdir(p):
- self.nfs_dir = p
+ self.rootfs = p
else:
m = re.match('(.*):(.*)', p)
self.nfs_server = m.group(1)
- self.nfs_dir = m.group(2)
- self.rootfs = ""
+ self.rootfs = m.group(2)
self.check_arg_fstype('nfs')
def check_arg_path(self, p):
@@ -759,7 +757,7 @@ class BaseConfig(object):
print('MACHINE: [%s]' % self.get('MACHINE'))
print('FSTYPE: [%s]' % self.fstype)
if self.fstype == 'nfs':
- print('NFS_DIR: [%s]' % self.nfs_dir)
+ print('NFS_DIR: [%s]' % self.rootfs)
else:
print('ROOTFS: [%s]' % self.rootfs)
if self.ovmf_bios:
@@ -804,13 +802,13 @@ class BaseConfig(object):
self.unfs_opts="nfsvers=3,port=%s,mountprog=%s,nfsprog=%s,udp,mountport=%s" % (nfsd_port, mountd_rpcport, nfsd_rpcport, mountd_port)
- # Extract .tar.bz2 or .tar.bz if no self.nfs_dir
- if not self.nfs_dir:
+ # Extract .tar.bz2 or .tar.bz if no nfs dir
+ if not (self.rootfs and os.path.isdir(self.rootfs)):
src_prefix = '%s/%s' % (self.get('DEPLOY_DIR_IMAGE'), self.get('IMAGE_LINK_NAME'))
dest = "%s-nfsroot" % src_prefix
if os.path.exists('%s.pseudo_state' % dest):
logger.info('Use %s as NFS_DIR' % dest)
- self.nfs_dir = dest
+ self.rootfs = dest
else:
src = ""
src1 = '%s.tar.bz2' % src_prefix
@@ -827,10 +825,10 @@ class BaseConfig(object):
if subprocess.call(cmd, shell=True) != 0:
raise Exception('Failed to run %s' % cmd)
self.clean_nfs_dir = True
- self.nfs_dir = dest
+ self.rootfs = dest
# Start the userspace NFS server
- cmd = 'runqemu-export-rootfs start %s' % self.nfs_dir
+ cmd = 'runqemu-export-rootfs start %s' % self.rootfs
logger.info('Running %s...' % cmd)
if subprocess.call(cmd, shell=True) != 0:
raise Exception('Failed to run %s' % cmd)
@@ -1001,7 +999,7 @@ class BaseConfig(object):
if self.fstype == 'nfs':
self.rootfs_options = ''
- k_root = '/dev/nfs nfsroot=%s:%s,%s' % (self.nfs_server, self.nfs_dir, self.unfs_opts)
+ k_root = '/dev/nfs nfsroot=%s:%s,%s' % (self.nfs_server, self.rootfs, self.unfs_opts)
self.kernel_cmdline = 'root=%s rw highres=off' % k_root
if self.fstype == 'none':
@@ -1147,7 +1145,7 @@ class BaseConfig(object):
if self.nfs_running:
logger.info("Shutting down the userspace NFS server...")
- cmd = "runqemu-export-rootfs stop %s" % self.nfs_dir
+ cmd = "runqemu-export-rootfs stop %s" % self.rootfs
logger.info('Running %s' % cmd)
subprocess.call(cmd, shell=True)
@@ -1156,9 +1154,9 @@ class BaseConfig(object):
subprocess.call(cmd, shell=True)
if self.clean_nfs_dir:
- logger.info('Removing %s' % self.nfs_dir)
- shutil.rmtree(self.nfs_dir)
- shutil.rmtree('%s.pseudo_state' % self.nfs_dir)
+ logger.info('Removing %s' % self.rootfs)
+ shutil.rmtree(self.rootfs)
+ shutil.rmtree('%s.pseudo_state' % self.rootfs)
def load_bitbake_env(self, mach=None):
if self.bitbake_e:
--
2.11.0.rc2.dirty
next prev parent reply other threads:[~2017-04-06 6:41 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-04-06 6:41 [PATCH 0/6] fixes for runqemu Robert Yang
2017-04-06 6:41 ` [PATCH 1/6] runqemu: fix 2 typos Robert Yang
2017-04-06 6:41 ` [PATCH 2/6] runqemu: support env vars explicitly Robert Yang
2017-04-06 6:41 ` Robert Yang [this message]
2017-04-06 6:41 ` [PATCH 4/6] runqemu: run without arguments Robert Yang
2017-04-06 6:41 ` [PATCH 5/6] runqemu: use realpath for imgdir Robert Yang
2017-04-06 6:41 ` [PATCH 6/6] runqemu: do not rely on grepping images Robert Yang
2017-04-06 23:54 ` [PATCH 0/6] fixes for runqemu Richard Purdie
2017-04-07 9:31 ` Robert Yang
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=ae5280da253521b56d2ee710534d5710cf88a162.1491460816.git.liezhi.yang@windriver.com \
--to=liezhi.yang@windriver.com \
--cc=openembedded-core@lists.openembedded.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.