mirror of
git://git.yoctoproject.org/poky.git
synced 2025-07-19 21:09:03 +02:00
isoimage-isohybrid: don't include cpio in cpio image
Because the find | cpio processes execute in parallel connected via the pipe, and the cpio outputs in the same dir find searches for source files, the cpio will be included in itself partially, depending on how fast the build machine creates the cpio file before cpio gobbles it up. This bloats the ISO image, though compression reduces the .iso file size, once the kernel decompresses the cpio image and boots it live, it uses up to double the RAM memory. Fix this by creating the initrd.cpio file directly inside cr_workdir. (From OE-Core rev: 7a7b29f5f1392f4f87af4f20cda99c66b4789fde) Signed-off-by: Ioan-Adrian Ratiu <adrian.ratiu@ni.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
parent
78067c910e
commit
ad42d8e4d9
|
@ -191,10 +191,9 @@ class IsoImagePlugin(SourcePlugin):
|
|||
else:
|
||||
raise WicError("Couldn't find or build initrd, exiting.")
|
||||
|
||||
exec_cmd("cd %s && find . | cpio -o -H newc -R root:root >./initrd.cpio " \
|
||||
% initrd_dir, as_shell=True)
|
||||
exec_cmd("gzip -f -9 -c %s/initrd.cpio > %s" \
|
||||
% (initrd_dir, initrd), as_shell=True)
|
||||
exec_cmd("cd %s && find . | cpio -o -H newc -R root:root >%s/initrd.cpio " \
|
||||
% (initrd_dir, cr_workdir), as_shell=True)
|
||||
exec_cmd("gzip -f -9 %s/initrd.cpio" % cr_workdir, as_shell=True)
|
||||
shutil.rmtree(initrd_dir)
|
||||
|
||||
return initrd
|
||||
|
|
Loading…
Reference in New Issue
Block a user