linux/drivers
Jean-Paul Saman c33df4eaaf [PATCH] disable init/initramfs.c
The file init/initramfs.c is always compiled and linked in the kernel
vmlinux even when BLK_DEV_RAM and BLK_DEV_INITRD are disabled and the
system isn't using any form of an initramfs or initrd.  In this situation
the code is only used to unpack a (static) default initial rootfilesystem.
The current init/initramfs.c code.  usr/initramfs_data.o compiles to a size
of ~15 kbytes.  Disabling BLK_DEV_RAM and BLK_DEV_INTRD shrinks the kernel
code size with ~60 Kbytes.

This patch avoids compiling in the code and data for initramfs support if
CONFIG_BLK_DEV_INITRD is not defined.  Instead of the initramfs code and
data it uses a small routine in init/noinitramfs.c to setup an initial
static default environment for mounting a rootfilesystem later on in the
kernel initialisation process.  The new code is: 164 bytes of size.

The patch is separated in two parts:
1) doesn't compile initramfs code when CONFIG_BLK_DEV_INITRD is not set
2) changing all plaforms vmlinux.lds.S files to not reserve an area of
PAGE_SIZE when CONFIG_BLK_DEV_INITRD is not set.

[deweerdt@free.fr: warning fix]
Signed-off-by: Jean-Paul Saman <jean-paul.saman@nxp.com>
Cc: Al Viro <viro@zeniv.linux.org.uk>
Cc: <linux-arch@vger.kernel.org>
Signed-off-by: Frederik Deweerdt <frederik.deweerdt@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-02-11 10:51:25 -08:00
..
acorn [PATCH] getting rid of all casts of k[cmz]alloc() calls 2006-12-13 09:05:58 -08:00
acpi [PATCH] wrong order of kzalloc arguments 2007-02-09 08:28:48 -08:00
amba
ata libata: kill ATA_ENABLE_PATA 2007-02-09 17:39:40 -05:00
atm [PATCH] horizon.c: missing __devinit 2007-01-23 11:09:49 -08:00
auxdisplay [PATCH] drivers: add LCD support 2007-02-11 10:51:24 -08:00
base [PATCH] Drop __get_zone_counts() 2007-02-11 10:51:18 -08:00
block [PATCH] disable init/initramfs.c 2007-02-11 10:51:25 -08:00
bluetooth [Bluetooth] Correct SCO buffer for Broadcom based Dell laptops 2007-01-09 00:29:59 -08:00
cdrom [PATCH] cdrom: set default timeout to 7 seconds 2007-01-03 17:32:54 -08:00
char [PATCH] Char: tty, delete wake_up_interruptible after tty_wakeup 2007-02-11 10:51:25 -08:00
clocksource [PATCH] clocksource: small cleanup 2006-12-10 09:57:22 -08:00
connector [PATCH] connector: some fixes for ia64 unaligned access errors 2007-01-05 23:55:29 -08:00
cpufreq [CPUFREQ] check sysfs_create_link return value 2007-01-29 00:06:27 -05:00
crypto Merge branch 'HEAD' of master.kernel.org:/pub/scm/linux/kernel/git/herbert/crypto-2.6 2007-02-08 15:25:18 -08:00
dio
dma [PATCH] slab: remove SLAB_KERNEL 2006-12-07 08:39:24 -08:00
edac [PATCH] Add include/linux/freezer.h and move definitions from sched.h 2006-12-07 08:39:27 -08:00
eisa
fc4 [PATCH] getting rid of all casts of k[cmz]alloc() calls 2006-12-13 09:05:58 -08:00
firmware ACPICA: Remove duplicate table definitions (non-conflicting), cont 2007-02-02 21:14:29 -05:00
hid HID: move away from DEBUG defines in favor of CONFIG_HID_DEBUG 2007-02-05 10:00:45 +01:00
hwmon [PATCH] hwmon: ansify 2007-02-09 09:14:06 -08:00
i2c USB: <linux/usb_ch9.h> becomes <linux/usb/ch9.h> 2007-02-07 15:44:32 -08:00
ide Merge master.kernel.org:/pub/scm/linux/kernel/git/bart/ide-2.6 2007-02-07 19:32:36 -08:00
ieee1394 ieee1394: fix host device registering when nodemgr disabled 2007-02-08 21:36:22 +01:00
infiniband [PATCH] iscsi endianness annotations 2007-02-09 09:14:07 -08:00
input [ALSA] ucb1400_ts.c compilation fix (struct snd_ac97) 2007-02-09 09:02:25 +01:00
isdn [PATCH] Gigaset ISDN driver error handling fixes 2007-01-26 13:50:58 -08:00
kvm [PATCH] misc NULL noise removal 2007-02-09 09:14:07 -08:00
leds [PATCH] Fix leds-s3c24xx hardware.h reference 2007-01-05 23:55:21 -08:00
macintosh [PATCH] enable mouse button 2+3 emulation for x86 macs 2007-02-09 09:25:47 -08:00
mca
md [PATCH] md: avoid possible BUG_ON in md bitmap handling 2007-02-09 09:25:47 -08:00
media [PATCH] misc duplicate field initializers 2007-02-09 09:14:07 -08:00
message [SCSI] fusion: bump version 2007-01-06 09:32:49 -06:00
mfd [PATCH] Add include/linux/freezer.h and move definitions from sched.h 2006-12-07 08:39:27 -08:00
misc [PATCH] TIFM should depend on PCI - TIFM_CORE leads to use of pci primitives 2007-02-09 08:28:48 -08:00
mmc [PATCH] TIFM should depend on PCI - TIFM_CORE leads to use of pci primitives 2007-02-09 08:28:48 -08:00
mtd [PATCH] mtd/nand/cafe.c missing include of dma-mapping.h 2007-01-30 08:39:20 -08:00
net Merge branch 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-tc 2007-02-09 09:22:36 -08:00
nubus
oprofile [PATCH] struct path: convert oprofile 2006-12-08 08:28:48 -08:00
parisc [PATCH] getting rid of all casts of k[cmz]alloc() calls 2006-12-13 09:05:58 -08:00
parport [PATCH] Kconfig refactoring for better menu nesting 2006-12-10 09:55:39 -08:00
pci devres: device resource management 2007-02-09 17:39:36 -05:00
pcmcia [PATCH] m32r: class_device -> device fallout 2007-02-09 08:28:48 -08:00
pnp PNPACPI: remove EXPERIMENTAL dependency 2007-01-26 02:15:57 -05:00
ps3 [POWERPC] PS3: Move vuart declarations to ps3.h 2007-02-07 14:03:20 +11:00
rapidio
rtc [PATCH] rtc-pcf8563: detect polarity of century bit automatically 2007-02-09 09:25:46 -08:00
s390 [S390]: Adapt special message interface to new IUCV API 2007-02-08 13:51:11 -08:00
sbus [PATCH] getting rid of all casts of k[cmz]alloc() calls 2006-12-13 09:05:58 -08:00
scsi Merge branch 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-tc 2007-02-09 09:22:36 -08:00
serial [PATCH] drivers/serial NULL noise removal 2007-02-09 09:14:06 -08:00
sh
sn
spi Revert "Driver core: convert SPI code to use struct device" 2007-02-07 21:34:08 -08:00
tc [TC] MIPS: TURBOchannel resources off-by-one fix 2007-02-09 16:23:15 +00:00
telephony [PATCH] struct path: convert ixj 2006-12-08 08:28:46 -08:00
usb [PATCH] hci_{read,write}l() does force casts to wrong type for no reason 2007-02-09 09:14:08 -08:00
video [TC] pmagb-b-fb: Convert to the driver model 2007-02-09 16:23:18 +00:00
w1 [PATCH] w1: Fix for kconfig entry typo 2006-12-13 09:05:48 -08:00
zorro [PATCH] struct path: convert zorro 2006-12-08 08:28:50 -08:00
Kconfig [PATCH] drivers: add LCD support 2007-02-11 10:51:24 -08:00
Makefile [PATCH] drivers: add LCD support 2007-02-11 10:51:24 -08:00