[poky] [PATCH 0/3][RFC] Poky disk space size optimization

Saul Wold saul.wold at intel.com
Mon Dec 6 18:47:16 PST 2010


On 12/06/2010 04:50 PM, Dongxiao Xu wrote:
> This RFC aims to reduce the poky disk space size.
>
> The optimization point is the duplicated file copies in WORKDIR and
> sysroot directories. When installing, files will be copied from source
> code package into the image folder; Then some files will be copied
> from image folder to sysroot-destdir, and some other files will be
> copied from image folder to package folder. While doing package split,
> some files will be copied from package folder to packages-split folder,
> etc.
>
There are a couple of concerns with this method, which may lead to 
problems, first is that using links and modifying permissions, it's 
possible that depending on the usage the permissions might be set 
differently.  This will could lead to a second problem: psuedo. It's 
unclear at this point how psuedo will handle this.

I am sure you have been doing testing, just not sure of corner cases.

I know we accepted the first change for the package split link to the 
deploy area, that one made sense as it was package level, this is file 
level and may have hidden problems.

I am sure that Richard will correct me and add his comments as he 
recovers from his travels.

Sau!

> The thought is to use hard link to replace the direct copy.
> The three commits do the work of:
>
> a) package.bbclass: hard link "image-->sysroot-destdir"
> b) sstate.bbclass:  hard link "package-->packages-split"
> c) staging.bbclass: hard link "sysroot-destdir-->sysroots".
>
> After testing with minimal/sato/sdk build, this approach could save
> about 20% disk space.
> (minimal: 23G ->  19G, sato: 44G ->  35G, sdk: 54G ->  44G).
>
> Pull URL: git://git.pokylinux.org/poky-contrib.git
>    Branch: dxu4/perf
>    Browse: http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=dxu4/perf
>
> Thanks,
>      Dongxiao Xu<dongxiao.xu at intel.com>
> ---
>
>
> Dongxiao Xu (3):
>    package.bbclass: Use hard link for package split instead of copy
>    sstate.bbclass: Use hard link when staging files into sysroots
>    staging.bbclass: use hardlink when staging files to sysroot-destdir
>
>   meta/classes/package.bbclass |    8 +++++---
>   meta/classes/sstate.bbclass  |    2 +-
>   meta/classes/staging.bbclass |   27 ++++++++++++++++++++++++++-
>   meta/lib/oe/path.py          |   28 ++++++++++++++++++++++++++++
>   4 files changed, 60 insertions(+), 5 deletions(-)
>
> _______________________________________________
> poky mailing list
> poky at yoctoproject.org
> https://lists.yoctoproject.org/listinfo/poky
>




More information about the poky mailing list