* Re: [PATCH] Auto resizing ext2/ext3 images (from Poky)
[not found] <200812051715.45106.openembedded@haerwu.biz>
@ 2008-12-05 16:24 ` Koen Kooi
2008-12-05 17:48 ` Denys Dmytriyenko
1 sibling, 0 replies; 5+ messages in thread
From: Koen Kooi @ 2008-12-05 16:24 UTC (permalink / raw)
To: openembedded-devel
On 05-12-08 17:15, Marcin Juszkiewicz wrote:
> During my work for OpenedHand I wrote one usefull thing which we used for
> ext2/ext3 images - autosizing.
>
> In few words: it checks how big rootfs is, adds IMAGE_EXTRA_SPACE amount
> of kilobytes to it and gives that size to genext2fs.
>
> Below is a patch with code changes. Check it and say what You think about
> it. One thing is missing - support for fixed size ext2/3 images big enough
> to fit resulting rootfs.
Looks good to me.
regards,
Koen
>
> diff --git a/classes/image.bbclass b/classes/image.bbclass
> index e9c0ecd..901ab34 100644
> --- a/classes/image.bbclass
> +++ b/classes/image.bbclass
> @@ -107,6 +107,7 @@ fakeroot do_rootfs () {
>
> ${IMAGE_PREPROCESS_COMMAND}
>
> + ROOTFS_SIZE=`du -ks ${IMAGE_ROOTFS}|awk '{print ${IMAGE_EXTRA_SPACE} + $1}'`
> ${@get_imagecmds(d)}
>
> ${IMAGE_POSTPROCESS_COMMAND}
> diff --git a/conf/bitbake.conf b/conf/bitbake.conf
> index 8a754fd..159f17f 100644
> --- a/conf/bitbake.conf
> +++ b/conf/bitbake.conf
> @@ -302,9 +302,9 @@ IMAGE_CMD = ""
> IMAGE_CMD_jffs2 = "mkfs.jffs2 -x lzo --root=${IMAGE_ROOTFS} --faketime --output=${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.jffs2 ${EXTRA_IMAGECMD}"
> IMAGE_CMD_yaffs2 = "mkyaffs2image ${EXTRA_IMAGECMD} ${IMAGE_ROOTFS} ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.yaffs2"
> IMAGE_CMD_cramfs = "mkcramfs ${IMAGE_ROOTFS} ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.cramfs ${EXTRA_IMAGECMD}"
> -IMAGE_CMD_ext2 = "genext2fs -b ${IMAGE_ROOTFS_SIZE} -d ${IMAGE_ROOTFS} ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.ext2 ${EXTRA_IMAGECMD}"
> +IMAGE_CMD_ext2 = "genext2fs -b ${ROOTFS_SIZE} -d ${IMAGE_ROOTFS} ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.ext2 ${EXTRA_IMAGECMD}"
> IMAGE_CMD_ext2.gz = "rm -rf ${DEPLOY_DIR_IMAGE}/tmp.gz&& mkdir ${DEPLOY_DIR_IMAGE}/tmp.gz; genext2fs -b ${IMAGE_ROOTFS_SIZE} -d ${IMAGE_ROOTFS}
> ${DEPLOY_DIR_IMAGE}/tmp.gz/${IMAGE_NAME}.rootfs.ext2 ${EXTRA_IMAGECMD}; gzip -f -9 ${DEPLOY_DIR_IMAGE}/tmp.gz/${IMAGE_NAME}.rootfs.ext2; mv
> ${DEPLOY_DIR_IMAGE}/tmp.gz/${IMAGE_NAME}.rootfs.ext2.gz ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.ext2.gz; rmdir ${DEPLOY_DIR_IMAGE}/tmp.gz"
> -IMAGE_CMD_ext3 = "genext2fs -b ${IMAGE_ROOTFS_SIZE} -d ${IMAGE_ROOTFS} ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.ext3 ${EXTRA_IMAGECMD}; tune2fs -j
> ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.ext3"
> +IMAGE_CMD_ext3 = "genext2fs -b ${ROOTFS_SIZE} -d ${IMAGE_ROOTFS} ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.ext3 ${EXTRA_IMAGECMD}; tune2fs -j
> ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.ext3"
> IMAGE_CMD_ext3.gz = "rm -rf ${DEPLOY_DIR_IMAGE}/tmp.gz&& mkdir ${DEPLOY_DIR_IMAGE}/tmp.gz; genext2fs -b ${IMAGE_ROOTFS_SIZE} -d ${IMAGE_ROOTFS}
> ${DEPLOY_DIR_IMAGE}/tmp.gz/${IMAGE_NAME}.rootfs.ext3 ${EXTRA_IMAGECMD}; tune2fs -j ${DEPLOY_DIR_IMAGE}/tmp.gz/${IMAGE_NAME}.rootfs.ext3; gzip -f -9
> ${DEPLOY_DIR_IMAGE}/tmp.gz/${IMAGE_NAME}.rootfs.ext3; mv ${DEPLOY_DIR_IMAGE}/tmp.gz/${IMAGE_NAME}.rootfs.ext3.gz
> ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.ext3.gz; rmdir ${DEPLOY_DIR_IMAGE}/tmp.gz"
> IMAGE_CMD_squashfs = "mksquashfs ${IMAGE_ROOTFS} ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.squashfs ${EXTRA_IMAGECMD} -noappend"
> IMAGE_CMD_squashfs-lzma = "mksquashfs-lzma ${IMAGE_ROOTFS} ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.squashfs-lzma ${EXTRA_IMAGECMD} -noappend"
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] Auto resizing ext2/ext3 images (from Poky)
[not found] <200812051715.45106.openembedded@haerwu.biz>
2008-12-05 16:24 ` [PATCH] Auto resizing ext2/ext3 images (from Poky) Koen Kooi
@ 2008-12-05 17:48 ` Denys Dmytriyenko
2009-01-20 15:30 ` Marcin Juszkiewicz
1 sibling, 1 reply; 5+ messages in thread
From: Denys Dmytriyenko @ 2008-12-05 17:48 UTC (permalink / raw)
To: openembedded-devel
On Fri, Dec 05, 2008 at 05:15:41PM +0100, Marcin Juszkiewicz wrote:
>
> During my work for OpenedHand I wrote one usefull thing which we used for
> ext2/ext3 images - autosizing.
Great! I often face this issue of not fitting everything in a predefined image
size. This patch should be very helpful!
> In few words: it checks how big rootfs is, adds IMAGE_EXTRA_SPACE amount
> of kilobytes to it and gives that size to genext2fs.
>
> Below is a patch with code changes. Check it and say what You think about
> it. One thing is missing - support for fixed size ext2/3 images big enough
> to fit resulting rootfs.
>
> diff --git a/classes/image.bbclass b/classes/image.bbclass
> index e9c0ecd..901ab34 100644
> --- a/classes/image.bbclass
> +++ b/classes/image.bbclass
> @@ -107,6 +107,7 @@ fakeroot do_rootfs () {
>
> ${IMAGE_PREPROCESS_COMMAND}
>
> + ROOTFS_SIZE=`du -ks ${IMAGE_ROOTFS}|awk '{print ${IMAGE_EXTRA_SPACE} + $1}'`
Can it be done like this:
ROOTFS_SIZE=`du -ks ${IMAGE_ROOTFS}|awk '{size = ${IMAGE_EXTRA_SPACE} + $1; \
print (size > ${IMAGE_ROOTFS_SIZE} ? size : ${IMAGE_ROOTFS_SIZE}) }'`
> ${@get_imagecmds(d)}
>
> ${IMAGE_POSTPROCESS_COMMAND}
--
Denys
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] Auto resizing ext2/ext3 images (from Poky)
2008-12-05 17:48 ` Denys Dmytriyenko
@ 2009-01-20 15:30 ` Marcin Juszkiewicz
2009-01-20 20:04 ` Denys Dmytriyenko
0 siblings, 1 reply; 5+ messages in thread
From: Marcin Juszkiewicz @ 2009-01-20 15:30 UTC (permalink / raw)
To: openembedded-devel
On Friday 05 of December 2008 18:48:06 Denys Dmytriyenko wrote:
> On Fri, Dec 05, 2008 at 05:15:41PM +0100, Marcin Juszkiewicz wrote:
> > In few words: it checks how big rootfs is, adds IMAGE_EXTRA_SPACE
> > amount of kilobytes to it and gives that size to genext2fs.
> >
> > Below is a patch with code changes. Check it and say what You think
> > about it. One thing is missing - support for fixed size ext2/3
> > images big enough to fit resulting rootfs.
> Can it be done like this:
>
> ROOTFS_SIZE=`du -ks ${IMAGE_ROOTFS}|awk '{size = ${IMAGE_EXTRA_SPACE}
> + $1; \ print (size > ${IMAGE_ROOTFS_SIZE} ? size :
> ${IMAGE_ROOTFS_SIZE}) }'`
Yes, it can - I pushed my patch and your code went too (as separate
commit).
Regards,
--
JID: hrw@jabber.org
Website: http://marcin.juszkiewicz.com.pl/
LinkedIn: http://www.linkedin.com/in/marcinjuszkiewicz
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] Auto resizing ext2/ext3 images (from Poky)
2009-01-20 15:30 ` Marcin Juszkiewicz
@ 2009-01-20 20:04 ` Denys Dmytriyenko
2009-01-20 20:16 ` Tom Rini
0 siblings, 1 reply; 5+ messages in thread
From: Denys Dmytriyenko @ 2009-01-20 20:04 UTC (permalink / raw)
To: openembedded-devel
On Tue, Jan 20, 2009 at 04:30:07PM +0100, Marcin Juszkiewicz wrote:
> On Friday 05 of December 2008 18:48:06 Denys Dmytriyenko wrote:
> > On Fri, Dec 05, 2008 at 05:15:41PM +0100, Marcin Juszkiewicz wrote:
> > > In few words: it checks how big rootfs is, adds IMAGE_EXTRA_SPACE
> > > amount of kilobytes to it and gives that size to genext2fs.
> > >
> > > Below is a patch with code changes. Check it and say what You think
> > > about it. One thing is missing - support for fixed size ext2/3
> > > images big enough to fit resulting rootfs.
>
> > Can it be done like this:
> >
> > ROOTFS_SIZE=`du -ks ${IMAGE_ROOTFS}|awk '{size = ${IMAGE_EXTRA_SPACE}
> > + $1; \ print (size > ${IMAGE_ROOTFS_SIZE} ? size :
> > ${IMAGE_ROOTFS_SIZE}) }'`
>
> Yes, it can - I pushed my patch and your code went too (as separate
> commit).
Thanks. I wonder why it can't be also applied to ext2.gz and ext3.gz images.
--
Denys
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] Auto resizing ext2/ext3 images (from Poky)
2009-01-20 20:04 ` Denys Dmytriyenko
@ 2009-01-20 20:16 ` Tom Rini
0 siblings, 0 replies; 5+ messages in thread
From: Tom Rini @ 2009-01-20 20:16 UTC (permalink / raw)
To: openembedded-devel
On Tue, Jan 20, 2009 at 03:04:54PM -0500, Denys Dmytriyenko wrote:
> On Tue, Jan 20, 2009 at 04:30:07PM +0100, Marcin Juszkiewicz wrote:
> > On Friday 05 of December 2008 18:48:06 Denys Dmytriyenko wrote:
> > > On Fri, Dec 05, 2008 at 05:15:41PM +0100, Marcin Juszkiewicz wrote:
> > > > In few words: it checks how big rootfs is, adds IMAGE_EXTRA_SPACE
> > > > amount of kilobytes to it and gives that size to genext2fs.
> > > >
> > > > Below is a patch with code changes. Check it and say what You think
> > > > about it. One thing is missing - support for fixed size ext2/3
> > > > images big enough to fit resulting rootfs.
> >
> > > Can it be done like this:
> > >
> > > ROOTFS_SIZE=`du -ks ${IMAGE_ROOTFS}|awk '{size = ${IMAGE_EXTRA_SPACE}
> > > + $1; \ print (size > ${IMAGE_ROOTFS_SIZE} ? size :
> > > ${IMAGE_ROOTFS_SIZE}) }'`
> >
> > Yes, it can - I pushed my patch and your code went too (as separate
> > commit).
>
> Thanks. I wonder why it can't be also applied to ext2.gz and ext3.gz images.
Tangentally, is there a reason we can't have:
IMAGE_CMD_ext2 = "...."
IMAGE_CMD_ext2.gz = "${IMAGE_CMD_ext2} ; gzip ..."
?
--
Tom Rini
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2009-01-20 20:23 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <200812051715.45106.openembedded@haerwu.biz>
2008-12-05 16:24 ` [PATCH] Auto resizing ext2/ext3 images (from Poky) Koen Kooi
2008-12-05 17:48 ` Denys Dmytriyenko
2009-01-20 15:30 ` Marcin Juszkiewicz
2009-01-20 20:04 ` Denys Dmytriyenko
2009-01-20 20:16 ` Tom Rini
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.