Bug 10013 - Suggested changes to the INITRAMFS_IMAGE_BUNDLE glossary entry
Summary: Suggested changes to the INITRAMFS_IMAGE_BUNDLE glossary entry
Status: RESOLVED FIXED
Alias: None
Product: Reference
Classification: Documentation
Component: handbook (show other bugs)
Version: 2.2
Hardware: x86 Multiple
: Medium normal
Target Milestone: 2.2 M3
Assignee: Scott Rifenbark
QA Contact:
URL:
Whiteboard: 01 August 2016: RESOLVED
Depends on:
Blocks:
 
Reported: 2016-07-24 17:11 UTC by ulfalizer
Modified: 2016-08-01 18:24 UTC (History)
5 users (show)

See Also:
OS type for building Yocto: ---
Type of Regression: ---
Verified:
Documentation change: Done (doc changes complete)


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description ulfalizer 2016-07-24 17:11:23 UTC
Hello,

The INITRAMFS_IMAGE_BUNDLE glossary entry gets caught up in implementation details and doesn't make it clear that this variable is simply an on/off switch for creating a kernel image with the initramfs bundled inside it. The description of the implementation details are hard to understand too (I had to stare at it for a long time).

I suggest the following changes:

1. Rewrite

     Using an extra compilation pass ensures that when a kernel attempts
     to use an initramfs, it does not encounter circular dependencies should
     the initramfs include kernel modules.

   to

     Using an extra compilation pass to bundle the initramfs avoids a circular
     dependency between the kernel recipe and the initramfs recipe in case
     the initramfs includes kernel modules. In that case, the initramfs recipe
     depends on the kernel for the kernel modules, and the kernel on the
     initramfs recipe since it bundles in the initramfs inside the kernel image.


2. Turn the rewritten part into a Note.


3. Rewrite

     Setting the variable to "1" in a configuration file causes the
     OpenEmbedded build system to make the extra pass during kernel
     compilation:

   to

     Setting the variable to "1" in a configuration file causes the
     OpenEmbedded build system to generate a kernel image with the
     initramfs specified in INITRAMFS_IMAGE bundled inside it.


4. Change

     INITRAMFS_IMAGE_BUNDLE = ""

   to

     INITRAMFS_IMAGE_BUNDLE ?= ""

   This matches what kernel.bbclass actually does.
Comment 1 ulfalizer 2016-07-24 19:02:20 UTC
Here's two more suggested changes to make things a bit more explicit:

5. Changing

     ...is run through an extra pass during kernel compilation...

   to

     ...is run through an extra pass ([do_bundle_initramfs]) during kernel compilation...

6. Adding the following sentence after "...and the initial RAM disk (initramfs)."

    This makes use of the CONFIG_INITRAMFS_SOURCE kernel feature.

Cheers,
Ulf
Comment 2 Scott Rifenbark 2016-07-29 23:13:09 UTC
Ulf, 

See http://www.yoctoproject.org/docs/2.2/ref-manual/ref-manual.html#var-INITRAMFS_IMAGE_BUNDLE for the changes.  I did some re-writing in the new note.  Please make sure I did not destroy any technical meaning.

Scott
Comment 3 ulfalizer 2016-07-30 12:25:31 UTC
Looks fine to me.

Cheers,
Ulf
Comment 4 Scott Rifenbark 2016-08-01 18:24:48 UTC
Thanks Ulf, 

Updated to RESOLVED and set the doc flag to "Done."

Scott