diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2019-02-21 16:00:02 +0000 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2019-03-24 16:48:38 +0000 |
commit | 776bf0b46b935f068168b403a5d67162ef27e97a (patch) | |
tree | 7ba2501b67804b08a58b3e91cb29bbffad9f3784 | |
parent | 459c0539171ebeebc2e48b004f5854c5c57da2e0 (diff) | |
download | poky-776bf0b46b935f068168b403a5d67162ef27e97a.tar.gz |
kernel: Ensure an initramfs is added if configured
If ${DEPLOY_DIR_IMAGE}/${INITRAMFS_IMAGE_NAME}.cpio does not exist,
nor any of the compressed variants, nothing is copied to kernel build's
./usr directory.
The code does not fail, but silently proceeds without a bundled initramfs.
Change to fail and tell the user something is wrong.
Also, if an initramfs is found, contrary to the comments, it does not stop
at the first uncompressed/compressed cpio image found. Instead it keeps
processing all so the last is used. Fix this to behave as per the comments.
[YOCTO #12909]
(Patch by Leon Woestenberg)
(From OE-Core rev: 5b5604e288af755eb5553a97d26533445b2cf94b)
(From OE-Core rev: 378f720090508d5c8c04f1b0265ba729f6ce827b)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r-- | meta/classes/kernel.bbclass | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/meta/classes/kernel.bbclass b/meta/classes/kernel.bbclass index 45cb4fabc1..bd185e258e 100644 --- a/meta/classes/kernel.bbclass +++ b/meta/classes/kernel.bbclass | |||
@@ -224,9 +224,11 @@ copy_initramfs() { | |||
224 | break | 224 | break |
225 | ;; | 225 | ;; |
226 | esac | 226 | esac |
227 | break | ||
227 | fi | 228 | fi |
228 | done | 229 | done |
229 | echo "Finished copy of initramfs into ./usr" | 230 | # Verify that the above loop found a initramfs, fail otherwise |
231 | [ -f ${B}/usr/${INITRAMFS_IMAGE_NAME}.cpio ] && echo "Finished copy of initramfs into ./usr" || die "Could not find any ${DEPLOY_DIR_IMAGE}/${INITRAMFS_IMAGE_NAME}.cpio{.gz|.lz4|.lzo|.lzma|.xz) for bundling; INITRAMFS_IMAGE_NAME might be wrong." | ||
230 | } | 232 | } |
231 | 233 | ||
232 | do_bundle_initramfs () { | 234 | do_bundle_initramfs () { |