summaryrefslogtreecommitdiffstats
path: root/usr/initramfs_data.S
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2010-10-29 00:13:55 +0200
committerLinus Torvalds <torvalds@linux-foundation.org>2010-10-29 00:13:55 +0200
commitc9e2a72ff1acfdffdecb338b3d997f90c507e665 (patch)
tree9be4b7e6a1cb90ffa86148a3937021118a5913c0 /usr/initramfs_data.S
parentMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/lrg... (diff)
parentinitramfs: Fix build break on symbol-prefixed archs (diff)
downloadlinux-c9e2a72ff1acfdffdecb338b3d997f90c507e665.tar.xz
linux-c9e2a72ff1acfdffdecb338b3d997f90c507e665.zip
Merge branch 'kbuild' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6
* 'kbuild' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6: initramfs: Fix build break on symbol-prefixed archs initramfs: fix initramfs size calculation initramfs: generalize initramfs_data.xxx.S variants scripts/kallsyms: Enable error messages while hush up unnecessary warnings scripts/setlocalversion: update comment kbuild: Use a single clean rule for kernel and external modules kbuild: Do not run make clean in $(srctree) scripts/mod/modpost.c: fix commentary accordingly to last changes kbuild: Really don't clean bounds.h and asm-offsets.h
Diffstat (limited to 'usr/initramfs_data.S')
-rw-r--r--usr/initramfs_data.S21
1 files changed, 14 insertions, 7 deletions
diff --git a/usr/initramfs_data.S b/usr/initramfs_data.S
index 7c6973d8d829..b9efed5e35cc 100644
--- a/usr/initramfs_data.S
+++ b/usr/initramfs_data.S
@@ -11,11 +11,7 @@
-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) }
-}
+ For including the .init.ramfs sections, see include/asm-generic/vmlinux.lds.
The above example is for i386 - the parameters vary from architectures.
Eventually look up LDFLAGS_BLOB in an older version of the
@@ -25,6 +21,17 @@ SECTIONS
in the ELF header, as required by certain architectures.
*/
-.section .init.ramfs,"a"
-.incbin "usr/initramfs_data.cpio"
+#include <linux/stringify.h>
+.section .init.ramfs,"a"
+__irf_start:
+.incbin __stringify(INITRAMFS_IMAGE)
+__irf_end:
+.section .init.ramfs.info,"a"
+.globl __initramfs_size
+__initramfs_size:
+#ifdef CONFIG_32BIT
+ .long __irf_end - __irf_start
+#else
+ .quad __irf_end - __irf_start
+#endif