aboutsummaryrefslogtreecommitdiffstats
path: root/init
diff options
context:
space:
mode:
Diffstat (limited to 'init')
-rw-r--r--init/Kconfig56
-rw-r--r--init/do_mounts.c15
2 files changed, 64 insertions, 7 deletions
diff --git a/init/Kconfig b/init/Kconfig
index e84c6423a2e5..e25a82a291a6 100644
--- a/init/Kconfig
+++ b/init/Kconfig
@@ -811,6 +811,7 @@ config LOG_BUF_SHIFT
811 int "Kernel log buffer size (16 => 64KB, 17 => 128KB)" 811 int "Kernel log buffer size (16 => 64KB, 17 => 128KB)"
812 range 12 21 812 range 12 21
813 default 17 813 default 17
814 depends on PRINTK
814 help 815 help
815 Select the minimal kernel log buffer size as a power of 2. 816 Select the minimal kernel log buffer size as a power of 2.
816 The final size is affected by LOG_CPU_MAX_BUF_SHIFT config 817 The final size is affected by LOG_CPU_MAX_BUF_SHIFT config
@@ -830,6 +831,7 @@ config LOG_CPU_MAX_BUF_SHIFT
830 range 0 21 831 range 0 21
831 default 12 if !BASE_SMALL 832 default 12 if !BASE_SMALL
832 default 0 if BASE_SMALL 833 default 0 if BASE_SMALL
834 depends on PRINTK
833 help 835 help
834 This option allows to increase the default ring buffer size 836 This option allows to increase the default ring buffer size
835 according to the number of CPUs. The value defines the contribution 837 according to the number of CPUs. The value defines the contribution
@@ -1475,6 +1477,7 @@ config FUTEX
1475 1477
1476config HAVE_FUTEX_CMPXCHG 1478config HAVE_FUTEX_CMPXCHG
1477 bool 1479 bool
1480 depends on FUTEX
1478 help 1481 help
1479 Architectures should select this if futex_atomic_cmpxchg_inatomic() 1482 Architectures should select this if futex_atomic_cmpxchg_inatomic()
1480 is implemented and always working. This removes a couple of runtime 1483 is implemented and always working. This removes a couple of runtime
@@ -1537,6 +1540,16 @@ config AIO
1537 by some high performance threaded applications. Disabling 1540 by some high performance threaded applications. Disabling
1538 this option saves about 7k. 1541 this option saves about 7k.
1539 1542
1543config ADVISE_SYSCALLS
1544 bool "Enable madvise/fadvise syscalls" if EXPERT
1545 default y
1546 help
1547 This option enables the madvise and fadvise syscalls, used by
1548 applications to advise the kernel about their future memory or file
1549 usage, improving performance. If building an embedded system where no
1550 applications use these syscalls, you can disable this option to save
1551 space.
1552
1540config PCI_QUIRKS 1553config PCI_QUIRKS
1541 default y 1554 default y
1542 bool "Enable PCI quirk workarounds" if EXPERT 1555 bool "Enable PCI quirk workarounds" if EXPERT
@@ -1906,6 +1919,49 @@ config MODULE_SIG_HASH
1906 default "sha384" if MODULE_SIG_SHA384 1919 default "sha384" if MODULE_SIG_SHA384
1907 default "sha512" if MODULE_SIG_SHA512 1920 default "sha512" if MODULE_SIG_SHA512
1908 1921
1922config MODULE_COMPRESS
1923 bool "Compress modules on installation"
1924 depends on MODULES
1925 help
1926 This option compresses the kernel modules when 'make
1927 modules_install' is run.
1928
1929 The modules will be compressed either using gzip or xz depend on the
1930 choice made in "Compression algorithm".
1931
1932 module-init-tools has support for gzip format while kmod handle gzip
1933 and xz compressed modules.
1934
1935 When a kernel module is installed from outside of the main kernel
1936 source and uses the Kbuild system for installing modules then that
1937 kernel module will also be compressed when it is installed.
1938
1939 This option provides little benefit when the modules are to be used inside
1940 an initrd or initramfs, it generally is more efficient to compress the whole
1941 initrd or initramfs instead.
1942
1943 This is fully compatible with signed modules while the signed module is
1944 compressed. module-init-tools or kmod handles decompression and provide to
1945 other layer the uncompressed but signed payload.
1946
1947choice
1948 prompt "Compression algorithm"
1949 depends on MODULE_COMPRESS
1950 default MODULE_COMPRESS_GZIP
1951 help
1952 This determines which sort of compression will be used during
1953 'make modules_install'.
1954
1955 GZIP (default) and XZ are supported.
1956
1957config MODULE_COMPRESS_GZIP
1958 bool "GZIP"
1959
1960config MODULE_COMPRESS_XZ
1961 bool "XZ"
1962
1963endchoice
1964
1909endif # MODULES 1965endif # MODULES
1910 1966
1911config INIT_ALL_POSSIBLE 1967config INIT_ALL_POSSIBLE
diff --git a/init/do_mounts.c b/init/do_mounts.c
index b6237c31b0e2..9b3565c41502 100644
--- a/init/do_mounts.c
+++ b/init/do_mounts.c
@@ -182,7 +182,8 @@ done:
182/* 182/*
183 * Convert a name into device number. We accept the following variants: 183 * Convert a name into device number. We accept the following variants:
184 * 184 *
185 * 1) device number in hexadecimal represents itself 185 * 1) <hex_major><hex_minor> device number in hexadecimal represents itself
186 * no leading 0x, for example b302.
186 * 2) /dev/nfs represents Root_NFS (0xff) 187 * 2) /dev/nfs represents Root_NFS (0xff)
187 * 3) /dev/<disk_name> represents the device number of disk 188 * 3) /dev/<disk_name> represents the device number of disk
188 * 4) /dev/<disk_name><decimal> represents the device number 189 * 4) /dev/<disk_name><decimal> represents the device number
@@ -539,6 +540,12 @@ void __init prepare_namespace(void)
539{ 540{
540 int is_floppy; 541 int is_floppy;
541 542
543 if (root_delay) {
544 printk(KERN_INFO "Waiting %d sec before mounting root device...\n",
545 root_delay);
546 ssleep(root_delay);
547 }
548
542 /* 549 /*
543 * wait for the known devices to complete their probing 550 * wait for the known devices to complete their probing
544 * 551 *
@@ -565,12 +572,6 @@ void __init prepare_namespace(void)
565 if (initrd_load()) 572 if (initrd_load())
566 goto out; 573 goto out;
567 574
568 if (root_delay) {
569 pr_info("Waiting %d sec before mounting root device...\n",
570 root_delay);
571 ssleep(root_delay);
572 }
573
574 /* wait for any asynchronous scanning to complete */ 575 /* wait for any asynchronous scanning to complete */
575 if ((ROOT_DEV == 0) && root_wait) { 576 if ((ROOT_DEV == 0) && root_wait) {
576 printk(KERN_INFO "Waiting for root device %s...\n", 577 printk(KERN_INFO "Waiting for root device %s...\n",