summaryrefslogtreecommitdiff
path: root/init
diff options
context:
space:
mode:
authorDavid S. Miller <davem@nuts.ninka.net>2002-10-15 07:41:35 -0700
committerDavid S. Miller <davem@nuts.ninka.net>2002-10-15 07:41:35 -0700
commit8fbfe7cd5594010a23cb4e81786d1fb8015ffdee (patch)
treeb5be190f22984395209823ec3cac1c76fc93f67f /init
parente22f7f5fd43205bfd20ea3a7bb4e689cb3f3d278 (diff)
parent5a7728c6d3eb83df9d120944cca4cf476dd326a1 (diff)
Merge nuts.ninka.net:/home/davem/src/BK/network-2.5
into nuts.ninka.net:/home/davem/src/BK/net-2.5
Diffstat (limited to 'init')
-rw-r--r--init/main.c22
1 files changed, 4 insertions, 18 deletions
diff --git a/init/main.c b/init/main.c
index c6023edc03f3..97d88c50366b 100644
--- a/init/main.c
+++ b/init/main.c
@@ -30,6 +30,8 @@
#include <linux/kernel_stat.h>
#include <linux/security.h>
#include <linux/workqueue.h>
+#include <linux/profile.h>
+#include <linux/rcupdate.h>
#include <asm/io.h>
#include <asm/bugs.h>
@@ -52,7 +54,6 @@
#error Sorry, your GCC is too old. It builds incorrect kernels.
#endif
-extern char _stext, _etext;
extern char *linux_banner;
static int init(void *);
@@ -130,13 +131,6 @@ __setup("maxcpus=", maxcpus);
static char * argv_init[MAX_INIT_ARGS+2] = { "init", NULL, };
char * envp_init[MAX_INIT_ENVS+2] = { "HOME=/", "TERM=linux", NULL, };
-static int __init profile_setup(char *str)
-{
- int par;
- if (get_option(&str,&par)) prof_shift = par;
- return 1;
-}
-
__setup("profile=", profile_setup);
static int __init checksetup(char *line)
@@ -397,6 +391,7 @@ asmlinkage void __init start_kernel(void)
printk("Kernel command line: %s\n", saved_command_line);
parse_options(command_line);
trap_init();
+ rcu_init();
init_IRQ();
sched_init();
softirq_init();
@@ -411,16 +406,7 @@ asmlinkage void __init start_kernel(void)
#ifdef CONFIG_MODULES
init_modules();
#endif
- if (prof_shift) {
- unsigned int size;
- /* only text is profiled */
- prof_len = (unsigned long) &_etext - (unsigned long) &_stext;
- prof_len >>= prof_shift;
-
- size = prof_len * sizeof(unsigned int) + PAGE_SIZE-1;
- prof_buffer = (unsigned int *) alloc_bootmem(size);
- }
-
+ profile_init();
kmem_cache_init();
local_irq_enable();
calibrate_delay();