forked from torvalds/linux
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
initramfs: add support for in-kernel initramfs compressed with LZO
Add the necessary parts to be enable the use of LZO-compressed initramfs build into the kernel. Signed-off-by: Albin Tonnerre <[email protected]> Cc: "H. Peter Anvin" <[email protected]> Cc: Michal Marek <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
- Loading branch information
Showing
3 changed files
with
34 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,29 @@ | ||
/* | ||
initramfs_data includes the compressed binary that is the | ||
filesystem used for early user space. | ||
Note: Older versions of "as" (prior to binutils 2.11.90.0.23 | ||
released on 2001-07-14) dit not support .incbin. | ||
If you are forced to use older binutils than that then the | ||
following trick can be applied to create the resulting binary: | ||
ld -m elf_i386 --format binary --oformat elf32-i386 -r \ | ||
-T initramfs_data.scr initramfs_data.cpio.gz -o initramfs_data.o | ||
ld -m elf_i386 -r -o built-in.o initramfs_data.o | ||
initramfs_data.scr looks like this: | ||
SECTIONS | ||
{ | ||
.init.ramfs : { *(.data) } | ||
} | ||
The above example is for i386 - the parameters vary from architectures. | ||
Eventually look up LDFLAGS_BLOB in an older version of the | ||
arch/$(ARCH)/Makefile to see the flags used before .incbin was introduced. | ||
Using .incbin has the advantage over ld that the correct flags are set | ||
in the ELF header, as required by certain architectures. | ||
*/ | ||
|
||
.section .init.ramfs,"a" | ||
.incbin "usr/initramfs_data.cpio.lzo" |