[PATCH v3 0/3] tools/bootconfig: Align the bootconfig applied initrd

From: Masami Hiramatsu
Date: Tue Nov 17 2020 - 04:53:47 EST


Hi,

This is the 3rd version of the bootconfig tool update to align
the total size of initrd + bootconfig to 4.

Previous version is here;

https://lkml.kernel.org/r/160554375807.96595.16142008590130221699.stgit@devnote2

This version adds a new partial-write fix patch as [1/3], and
update main patch [2/3] by unifying writeU) and check write error
correctly as Linus pointed.

To adjust the file size, the bootconfig tool adds padding null
characters in between the boot configuration data and the footer.

The changing points are
- The bootconfig applied initrd image size is aligned to 4.
- To insert the padding null ('\0') bytes, the size in the footer
can be bigger than the actual bootconfig file size.
- But the max size of the boot configuration file is same, because
the max size doesn't include the last null characters.

In this series I keep 4 bytes aligned instead of longer size,
because only I could found was that the grub might align the initrd
filesize to 4, and U-Boot/EDK2 would not change it. So I couldn't
say what is the best size.

Anyway, I updated the documentation too, which clearly says that
the above changing points, and if the bootloader pass the wrong
size, kernel will not find bootconfig from the initrd.

Thank you,

---

Masami Hiramatsu (3):
tools/bootconfig: Fix to check the write failure correctly
tools/bootconfig: Align the bootconfig applied initrd image size to 4
docs: bootconfig: Update file format on initrd image


Documentation/admin-guide/bootconfig.rst | 18 +++++++--
include/linux/bootconfig.h | 1 +
tools/bootconfig/main.c | 57 ++++++++++++++++++++++--------
tools/bootconfig/test-bootconfig.sh | 6 +++
4 files changed, 60 insertions(+), 22 deletions(-)

--
Masami Hiramatsu (Linaro) <mhiramat@xxxxxxxxxx>