aboutsummaryrefslogtreecommitdiffstats
path: root/init
diff options
context:
space:
mode:
Diffstat (limited to 'init')
-rw-r--r--init/do_mounts.c2
-rw-r--r--init/do_mounts.h1
-rw-r--r--init/main.c22
3 files changed, 6 insertions, 19 deletions
diff --git a/init/do_mounts.c b/init/do_mounts.c
index f769fac4f4c0..3715feb8446d 100644
--- a/init/do_mounts.c
+++ b/init/do_mounts.c
@@ -23,7 +23,7 @@
23int __initdata rd_doload; /* 1 = load RAM disk, 0 = don't load */ 23int __initdata rd_doload; /* 1 = load RAM disk, 0 = don't load */
24 24
25int root_mountflags = MS_RDONLY | MS_SILENT; 25int root_mountflags = MS_RDONLY | MS_SILENT;
26char * __initdata root_device_name; 26static char * __initdata root_device_name;
27static char __initdata saved_root_name[64]; 27static char __initdata saved_root_name[64];
28static int __initdata root_wait; 28static int __initdata root_wait;
29 29
diff --git a/init/do_mounts.h b/init/do_mounts.h
index 735705d137ff..9aa968d54329 100644
--- a/init/do_mounts.h
+++ b/init/do_mounts.h
@@ -11,7 +11,6 @@ void change_floppy(char *fmt, ...);
11void mount_block_root(char *name, int flags); 11void mount_block_root(char *name, int flags);
12void mount_root(void); 12void mount_root(void);
13extern int root_mountflags; 13extern int root_mountflags;
14extern char *root_device_name;
15 14
16static inline int create_dev(char *name, dev_t dev) 15static inline int create_dev(char *name, dev_t dev)
17{ 16{
diff --git a/init/main.c b/init/main.c
index 0604cbcaf1e4..20fdc9884b77 100644
--- a/init/main.c
+++ b/init/main.c
@@ -743,13 +743,13 @@ static void __init do_one_initcall(initcall_t fn)
743} 743}
744 744
745 745
746extern initcall_t __initcall_start[], __initcall_end[]; 746extern initcall_t __initcall_start[], __initcall_end[], __early_initcall_end[];
747 747
748static void __init do_initcalls(void) 748static void __init do_initcalls(void)
749{ 749{
750 initcall_t *call; 750 initcall_t *call;
751 751
752 for (call = __initcall_start; call < __initcall_end; call++) 752 for (call = __early_initcall_end; call < __initcall_end; call++)
753 do_one_initcall(*call); 753 do_one_initcall(*call);
754 754
755 /* Make sure there is no pending stuff from the initcall sequence */ 755 /* Make sure there is no pending stuff from the initcall sequence */
@@ -774,24 +774,12 @@ static void __init do_basic_setup(void)
774 do_initcalls(); 774 do_initcalls();
775} 775}
776 776
777static int __initdata nosoftlockup;
778
779static int __init nosoftlockup_setup(char *str)
780{
781 nosoftlockup = 1;
782 return 1;
783}
784__setup("nosoftlockup", nosoftlockup_setup);
785
786static void __init do_pre_smp_initcalls(void) 777static void __init do_pre_smp_initcalls(void)
787{ 778{
788 extern int spawn_ksoftirqd(void); 779 initcall_t *call;
789 780
790 init_call_single_data(); 781 for (call = __initcall_start; call < __early_initcall_end; call++)
791 migration_init(); 782 do_one_initcall(*call);
792 spawn_ksoftirqd();
793 if (!nosoftlockup)
794 spawn_softlockup_task();
795} 783}
796 784
797static void run_init_process(char *init_filename) 785static void run_init_process(char *init_filename)