From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by mail.openembedded.org (Postfix) with ESMTP id 8B94C65D53 for ; Fri, 25 Jul 2014 15:00:19 +0000 (UTC) Received: from orsmga001.jf.intel.com ([10.7.209.18]) by orsmga102.jf.intel.com with ESMTP; 25 Jul 2014 07:54:37 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.01,731,1400050800"; d="scan'208";a="549014524" Received: from unknown (HELO [10.255.12.245]) ([10.255.12.245]) by orsmga001.jf.intel.com with ESMTP; 25 Jul 2014 08:00:08 -0700 Message-ID: <1406300409.6205.29.camel@empanada> From: Tom Zanussi To: Maciej Borzecki Date: Fri, 25 Jul 2014 10:00:09 -0500 In-Reply-To: <1406249389.6205.18.camel@empanada> References: <1406143292.6335.27.camel@empanada> <1406204836-18090-1-git-send-email-maciej.borzecki@open-rnd.pl> <1406249389.6205.18.camel@empanada> X-Mailer: Evolution 3.8.5 (3.8.5-2.fc19) Mime-Version: 1.0 Cc: Maciek Borzecki , openembedded-core@lists.openembedded.org Subject: Re: [PATCH v2] wic: do not overwrite autogenerated /etc/fstab with original too early X-BeenThere: openembedded-core@lists.openembedded.org X-Mailman-Version: 2.1.12 Precedence: list List-Id: Patches and discussions about the oe-core layer List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Jul 2014 15:00:25 -0000 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit On Thu, 2014-07-24 at 19:49 -0500, Tom Zanussi wrote: > On Thu, 2014-07-24 at 14:27 +0200, Maciej Borzecki wrote: > > DirectImageCreator.__write_fstab() generates new /etc/fstab in sysroot > > with rootfs contents. The fstab entries are generated base on the > > initialn contents of /etc/fstab, plus any extra (other than / or > > /boot) partitions listed in *.wks. A backup of original /etc/fstab is > > done in a temp location. Subsequent call to __restore_fstab() restores > > the backup copy, replacing the autogenerated one. > > > > Calling __restore_fstab() before Wic_PartData.prepare() brings back the > > original fstab before the partition image file actually is created. As > > such, the autogenerated /etc/fstab will not make it to the partition. > > > > OK, I knew there was something funny about this, and it wasn't really > fixing the problem. I also knew that it had previously worked, and > digging around realized that the problem was that the recent patch 'wic: > Extend --rootfs-dir to connect rootfs-dirs' is what actually broke > things. > > So this patch shouldn't be applied - I need to look at it a bit more and > come up with a proper fix.. > OK, I take that back - this patch is fine to apply. Acked-by: Tom Zanussi What confused me was that your first patch was clearly wrong, but you moved the __write_fstab() to before .prepare in your second patch, which is correct. In the future, for v2 and beyond patches, please note what changed from the previous version. Thanks, Tom > Tom > > > Signed-off-by: Maciej Borzecki > > Signed-off-by: Maciek Borzecki > > --- > > > > Notes: > > Previous version got messed up during merges and faulty code was sent > > out. This one works as expected. > > > > scripts/lib/mic/imager/direct.py | 5 ++++- > > 1 file changed, 4 insertions(+), 1 deletion(-) > > > > diff --git a/scripts/lib/mic/imager/direct.py b/scripts/lib/mic/imager/direct.py > > index 2cf4c8d..77a118a 100644 > > --- a/scripts/lib/mic/imager/direct.py > > +++ b/scripts/lib/mic/imager/direct.py > > @@ -262,10 +262,12 @@ class DirectImageCreator(BaseImageCreator): > > # when/if we need to actually do package selection we > > # should modify things to use those objects, but for now > > # we can avoid that. > > + > > + fstab = self.__write_fstab(self.rootfs_dir.get("ROOTFS_DIR")) > > + > > p.prepare(self, self.workdir, self.oe_builddir, self.rootfs_dir, > > self.bootimg_dir, self.kernel_dir, self.native_sysroot) > > > > - fstab = self.__write_fstab(p.get_rootfs()) > > self._restore_fstab(fstab) > > > > self.__instimage.add_partition(int(p.size), > > @@ -278,6 +280,7 @@ class DirectImageCreator(BaseImageCreator): > > boot = p.active, > > align = p.align, > > part_type = p.part_type) > > + > > self.__instimage.layout_partitions(self._ptable_format) > > > > self.__imgdir = self.workdir >