From mboxrd@z Thu Jan 1 00:00:00 1970 X-GM-THRID: 6659325660443443200 Date: Tue, 26 Feb 2019 03:35:17 -0800 (PST) From: cedric_hombourger@mentor.com To: isar-users Message-Id: <6c0e6ea1-bd68-4ded-b6a0-2da66249cce5@googlegroups.com> In-Reply-To: <20190219102555.1ce22459@md1za8fc.ad001.siemens.net> References: <20190218130429.9881-1-claudius.heine.ext@siemens.com> <20190218130429.9881-2-claudius.heine.ext@siemens.com> <20190219102555.1ce22459@md1za8fc.ad001.siemens.net> Subject: Re: [PATCH 1/1] meta/ext4-img: refactor to fit current image creation methods MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="----=_Part_1163_2104286654.1551180917967" X-Google-Token: EPXI1OMFIPJA7LbYTEY0 X-Google-IP: 95.176.90.117 X-TUID: Pcy/SGWmDejX ------=_Part_1163_2104286654.1551180917967 Content-Type: multipart/alternative; boundary="----=_Part_1164_1496759022.1551180917967" ------=_Part_1164_1496759022.1551180917967 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Hi Henning, One use-case on our side is the generation of SWUpdate image. Our helper class uses do_ext4_image to generate the file-system image we later embed into the .swu file Hope that helps Cedric On Tuesday, February 19, 2019 at 10:25:58 AM UTC+1, Henning Schild wrote: > > Hi, > > did you do some research on ext4-usage, we might be able to just drop > it and use wic instead. The qemus will have to switch from i.e. > root=/dev/sda to /dev/sda1 ... sounds easy enough. As far as i can tell > they are the only users in Isar. And outside a raw ext4 partition does > not seem to be too useful either, we could always keep it as > "deprecated" if we are afraid of that move. > > Henning > > On Mon, 18 Feb 2019 14:04:29 +0100 > "[ext] claudius....@siemens.com " > > wrote: > > > From: Claudius Heine > > > > > EXT4_IMAGE_FILE does no longer contain the full path to the ext4 image > > in the deploy directory. > > > > Signed-off-by: Claudius Heine > > > --- > > meta-isar/classes/rpi-sdimg.bbclass | 2 +- > > meta/classes/ext4-img.bbclass | 31 > > +++++++++++------------------ 2 files changed, 13 insertions(+), 20 > > deletions(-) > > > > diff --git a/meta-isar/classes/rpi-sdimg.bbclass > > b/meta-isar/classes/rpi-sdimg.bbclass index 91b09cd..4e5d170 100644 > > --- a/meta-isar/classes/rpi-sdimg.bbclass > > +++ b/meta-isar/classes/rpi-sdimg.bbclass > > @@ -15,7 +15,7 @@ BOOT_SPACE ?= "40960" > > IMAGE_ROOTFS_ALIGNMENT = "4096" > > > > SDIMG = "${DEPLOY_DIR_IMAGE}/${PN}.rpi-sdimg" > > -SDIMG_ROOTFS = "${EXT4_IMAGE_FILE}" > > +SDIMG_ROOTFS = "${DEPLOY_DIR_IMAGE}/${EXT4_IMAGE_FILE}" > > > > do_rpi_sdimg () { > > # Align partitions > > diff --git a/meta/classes/ext4-img.bbclass > > b/meta/classes/ext4-img.bbclass index 29e5f77..2620de9 100644 > > --- a/meta/classes/ext4-img.bbclass > > +++ b/meta/classes/ext4-img.bbclass > > @@ -1,30 +1,23 @@ > > # This software is a part of ISAR. > > # Copyright (C) 2015-2017 ilbers GmbH > > > > -EXT4_IMAGE_FILE = "${DEPLOY_DIR_IMAGE}/${IMAGE_FULLNAME}.ext4.img" > > +EXT4_IMAGE_FILE = "${IMAGE_FULLNAME}.ext4.img" > > + > > +IMAGER_INSTALL += "e2fsprogs" > > > > do_ext4_image[stamp-extra-info] = "${DISTRO}-${MACHINE}" > > > > # Generate ext4 filesystem image > > do_ext4_image() { > > - rm -f ${EXT4_IMAGE_FILE} > > - > > - dd if=/dev/zero of=${EXT4_IMAGE_FILE} bs=1k count=${ROOTFS_SIZE} > > - > > - sudo mkfs.ext4 -F ${EXT4_IMAGE_FILE} > > - > > - mkdir -p ${WORKDIR}/mnt > > - sudo mount -o loop ${EXT4_IMAGE_FILE} ${WORKDIR}/mnt > > - _do_ext4_image_cleanup() { > > - ret=$? > > - sudo umount ${WORKDIR}/mnt 2>/dev/null || true > > - sudo rmdir ${WORKDIR}/mnt 2>/dev/null || true > > - (exit $ret) || bb_exit_handler > > - } > > - trap '_do_ext4_image_cleanup' EXIT > > - sudo cp -r ${IMAGE_ROOTFS}/* ${WORKDIR}/mnt > > - _do_ext4_image_cleanup > > + rm -f '${DEPLOY_DIR_IMAGE}/${EXT4_IMAGE_FILE}' > > + > > + truncate -s ${ROOTFS_SIZE}K > > '${DEPLOY_DIR_IMAGE}/${EXT4_IMAGE_FILE}' + > > + image_do_mounts > > + > > + sudo chroot ${BUILDCHROOT_DIR} /sbin/mke2fs ${MKE2FS_ARGS} \ > > + -F -d '${PP_ROOTFS}' > > '${PP_DEPLOY}/${EXT4_IMAGE_FILE}' } > > > > -addtask ext4_image before do_build after do_copy_boot_files > > +addtask ext4_image before do_build after do_copy_boot_files > > do_install_imager_deps do_ext4_image[prefuncs] = 'set_image_size' > > ------=_Part_1164_1496759022.1551180917967 Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: quoted-printable
Hi Henning,

One use-case on our side is= the generation of SWUpdate image. Our helper class uses do_ext4_image to g= enerate the file-system image we later embed into the .swu file
<= br>
Hope that helps
Cedric

On Tuesday, February = 19, 2019 at 10:25:58 AM UTC+1, Henning Schild wrote:
Hi,

did you do some research on ext4-usage, we might be able to just drop
it and use wic instead. The qemus will have to switch from i.e.
root=3D/dev/sda to /dev/sda1 ... sounds easy enough. As far as i can te= ll
they are the only users in Isar. And outside a raw ext4 partition does
not seem to be too useful either, we could always keep it as
"deprecated" if we are afraid of that move.

Henning

On Mon, 18 Feb 2019 14:04:29 +0100
"[ext] claudius....@siemens.com" <claudius....@siemens.com>
wrote:

> From: Claudius Heine <c...@denx.de>
>=20
> EXT4_IMAGE_FILE does no longer contain the full path to the ext4 i= mage
> in the deploy directory.
>=20
> Signed-off-by: Claudius Heine <c...@denx.de>
> ---
> =C2=A0meta-isar/classes/rpi-sdimg.bbclass | =C2=A02 +-
> =C2=A0meta/classes/ext4-img.bbclass =C2=A0 =C2=A0 =C2=A0 | 31
> +++++++++++------------------ 2 files changed, 13 insertions(+), 2= 0
> deletions(-)
>=20
> diff --git a/meta-isar/classes/rpi-sdimg.bbclass
> b/meta-isar/classes/rpi-sdimg.bbclass index 91b09cd..4e5d170 = 100644
> --- a/meta-isar/classes/rpi-sdimg.bbclass
> +++ b/meta-isar/classes/rpi-sdimg.bbclass
> @@ -15,7 +15,7 @@ BOOT_SPACE ?=3D "40960"
> =C2=A0IMAGE_ROOTFS_ALIGNMENT =3D "4096"
> =C2=A0
> =C2=A0SDIMG =3D "${DEPLOY_DIR_IMAGE}/${PN}.rpi-sdimg&quo= t;
> -SDIMG_ROOTFS =3D "${EXT4_IMAGE_FILE}"
> +SDIMG_ROOTFS =3D "${DEPLOY_DIR_IMAGE}/${EXT4_IMAGE_FILE= }"
> =C2=A0
> =C2=A0do_rpi_sdimg () {
> =C2=A0 =C2=A0 =C2=A0# Align partitions
> diff --git a/meta/classes/ext4-img.bbclass
> b/meta/classes/ext4-img.bbclass index 29e5f77..2620de9 100644
> --- a/meta/classes/ext4-img.bbclass
> +++ b/meta/classes/ext4-img.bbclass
> @@ -1,30 +1,23 @@
> =C2=A0# This software is a part of ISAR.
> =C2=A0# Copyright (C) 2015-2017 ilbers GmbH
> =C2=A0
> -EXT4_IMAGE_FILE =3D "${DEPLOY_DIR_IMAGE}/${IMAGE_FULLNA= ME}.ext4.img"
> +EXT4_IMAGE_FILE =3D "${IMAGE_FULLNAME}.ext4.img"
> +
> +IMAGER_INSTALL +=3D "e2fsprogs"
> =C2=A0
> =C2=A0do_ext4_image[stamp-extra-info] =3D "${DISTRO}-${M= ACHINE}"
> =C2=A0
> =C2=A0# Generate ext4 filesystem image
> =C2=A0do_ext4_image() {
> - =C2=A0 =C2=A0rm -f ${EXT4_IMAGE_FILE}
> -
> - =C2=A0 =C2=A0dd if=3D/dev/zero of=3D${EXT4_IMAGE_FILE} bs=3D1k c= ount=3D${ROOTFS_SIZE}
> -
> - =C2=A0 =C2=A0sudo mkfs.ext4 -F ${EXT4_IMAGE_FILE}
> -
> - =C2=A0 =C2=A0mkdir -p ${WORKDIR}/mnt
> - =C2=A0 =C2=A0sudo mount -o loop ${EXT4_IMAGE_FILE} ${WORKDIR}/mn= t
> - =C2=A0 =C2=A0_do_ext4_image_cleanup() {
> - =C2=A0 =C2=A0 =C2=A0 =C2=A0ret=3D$?
> - =C2=A0 =C2=A0 =C2=A0 =C2=A0sudo umount ${WORKDIR}/mnt 2>/dev/= null || true
> - =C2=A0 =C2=A0 =C2=A0 =C2=A0sudo rmdir ${WORKDIR}/mnt 2>/dev/n= ull || true
> - =C2=A0 =C2=A0 =C2=A0 =C2=A0(exit $ret) || bb_exit_handler
> - =C2=A0 =C2=A0}
> - =C2=A0 =C2=A0trap '_do_ext4_image_cleanup' EXIT
> - =C2=A0 =C2=A0sudo cp -r ${IMAGE_ROOTFS}/* ${WORKDIR}/mnt
> - =C2=A0 =C2=A0_do_ext4_image_cleanup
> + =C2=A0 =C2=A0rm -f '${DEPLOY_DIR_IMAGE}/${EXT4_IMAGE_FI= LE}'
> +
> + =C2=A0 =C2=A0truncate -s ${ROOTFS_SIZE}K
> '${DEPLOY_DIR_IMAGE}/${EXT4_IMAGE_FILE}' +
> + =C2=A0 =C2=A0image_do_mounts
> +
> + =C2=A0 =C2=A0sudo chroot ${BUILDCHROOT_DIR} /sbin/mke2fs ${MKE2F= S_ARGS} \
> + =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0-F -d = 9;${PP_ROOTFS}'
> '${PP_DEPLOY}/${EXT4_IMAGE_FILE}' }
> =C2=A0
> -addtask ext4_image before do_build after do_copy_boot_files
> +addtask ext4_image before do_build after do_copy_boot_files
> do_install_imager_deps do_ext4_image[prefuncs] =3D 'set_image_= size'

------=_Part_1164_1496759022.1551180917967-- ------=_Part_1163_2104286654.1551180917967--