From: Ed Bartosh <ed.bartosh@linux.intel.com>
To: Christopher Larson <kergoth@gmail.com>
Cc: Christopher Larson <chris_larson@mentor.com>,
openembedded-core@lists.openembedded.org
Subject: Re: [PATCH] wic: obey the rootfs size from the metadata
Date: Mon, 19 Dec 2016 13:59:09 +0200 [thread overview]
Message-ID: <20161219115909.GB11680@linux.intel.com> (raw)
In-Reply-To: <20161216144728.GC6398@linux.intel.com>
On Fri, Dec 16, 2016 at 04:47:28PM +0200, Ed Bartosh wrote:
> Hi Christopher,
>
> Thank you for the patch!
>
> +1
>
Would you be willing to add test case(s) for this functionality to wic
selftest module?
> On Thu, Dec 15, 2016 at 12:42:39PM -0700, Christopher Larson wrote:
> > From: Christopher Larson <chris_larson@mentor.com>
> >
> > When no --size is specified for the rootfs in the .wks, we want to obey the
> > rootfs size from the metadata, otherwise the defined IMAGE_ROOTFS_EXTRA_SPACE
> > and IMAGE_OVERHEAD_FACTOR will not be obeyed. In some cases, this can result
> > in image construction failure, if the size determined by du was insufficient
> > to hold the files without the aforementioned extra space.
> >
> > This fallback from --size to ROOTFS_SIZE was already implemented when
> > --rootfs-dir is specified in the .wks, but it did not occur otherwise, neither
> > when --rootfs-dir= was passed to `wic create` nor when IMAGE_ROOTFS was used.
> > This made a certain amount of sense, as this fallback logic happened at such
> > a level that it wasn't able to identify which partitions were rootfs
> > partitions otherwise. Rather than doing it at that level, we can do it in
> > prepare_rootfs(), which is run by the rootfs source plugins.
> >
> > Note that IMAGE_OVERHEAD_FACTOR and a --overhead-factor in the .wks will now
> > both be applied when --size isn't specified in the .wks. A warning is added
> > about this, though a user won't see it unless wic fails or they examine the
> > do_image_wic log.
> >
> > Fixes [YOCTO #10815]
> >
> > Signed-off-by: Christopher Larson <chris_larson@mentor.com>
> > ---
> > scripts/lib/wic/partition.py | 13 ++++++++++++-
> > 1 file changed, 12 insertions(+), 1 deletion(-)
> >
> > diff --git a/scripts/lib/wic/partition.py b/scripts/lib/wic/partition.py
> > index ac4c836..b191cde 100644
> > --- a/scripts/lib/wic/partition.py
> > +++ b/scripts/lib/wic/partition.py
> > @@ -28,7 +28,7 @@ import os
> > import tempfile
> >
> > from wic.utils.oe.misc import msger, parse_sourceparams
> > -from wic.utils.oe.misc import exec_cmd, exec_native_cmd
> > +from wic.utils.oe.misc import exec_cmd, exec_native_cmd, get_bitbake_var
> > from wic.plugin import pluginmgr
> >
> > partition_methods = {
> > @@ -194,6 +194,17 @@ class Partition():
> > msger.error("File system for partition %s not specified in kickstart, " \
> > "use --fstype option" % (self.mountpoint))
> >
> > + # Get rootfs size from bitbake variable if it's not set in .ks file
> > + if not self.size:
> > + # Bitbake variable ROOTFS_SIZE is calculated in
> > + # Image._get_rootfs_size method from meta/lib/oe/image.py
> > + # using IMAGE_ROOTFS_SIZE, IMAGE_ROOTFS_ALIGNMENT,
> > + # IMAGE_OVERHEAD_FACTOR and IMAGE_ROOTFS_EXTRA_SPACE
> > + rsize_bb = get_bitbake_var('ROOTFS_SIZE')
> > + if rsize_bb:
> > + msger.warning('overhead-factor was specified, but size was not, so bitbake variables will be used for the size. In this case both IMAGE_OVERHEAD_FACTOR and --overhead-factor will be applied')
> > + self.size = int(round(float(rsize_bb)))
> > +
> > for prefix in ("ext", "btrfs", "vfat", "squashfs"):
> > if self.fstype.startswith(prefix):
> > method = getattr(self, "prepare_rootfs_" + prefix)
> > --
> > 2.8.0
> >
>
> --
> --
> Regards,
> Ed
> --
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core
--
--
Regards,
Ed
prev parent reply other threads:[~2016-12-19 11:59 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-12-15 19:42 [PATCH] wic: obey the rootfs size from the metadata Christopher Larson
2016-12-16 14:47 ` Ed Bartosh
2016-12-19 11:59 ` Ed Bartosh [this message]
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=20161219115909.GB11680@linux.intel.com \
--to=ed.bartosh@linux.intel.com \
--cc=chris_larson@mentor.com \
--cc=kergoth@gmail.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox