aboutsummaryrefslogtreecommitdiffstats
path: root/init
diff options
context:
space:
mode:
authorDave Jones <davej@redhat.com>2007-07-16 02:41:05 -0400
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-07-16 12:05:47 -0400
commit97842216b8400fe9d1a20468959e2989180f8f79 (patch)
tree63d0d731e0e93d5ef9ac1a23734c60cd0f0664f2 /init
parentea5a3dcfda1c9140228f2842ea9b01e1713c559a (diff)
Allow softlockup to be runtime disabled
It's useful sometimes to disable the softlockup checker at boottime. Especially if it triggers during a distro install. Signed-off-by: Dave Jones <davej@redhat.com> Cc: Ingo Molnar <mingo@elte.hu> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'init')
-rw-r--r--init/main.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/init/main.c b/init/main.c
index 038c7cb52390..c8c9a0b21e99 100644
--- a/init/main.c
+++ b/init/main.c
@@ -728,6 +728,15 @@ static void __init do_basic_setup(void)
728 do_initcalls(); 728 do_initcalls();
729} 729}
730 730
731static int __initdata nosoftlockup;
732
733static int __init nosoftlockup_setup(char *str)
734{
735 nosoftlockup = 1;
736 return 1;
737}
738__setup("nosoftlockup", nosoftlockup_setup);
739
731static void __init do_pre_smp_initcalls(void) 740static void __init do_pre_smp_initcalls(void)
732{ 741{
733 extern int spawn_ksoftirqd(void); 742 extern int spawn_ksoftirqd(void);
@@ -737,7 +746,8 @@ static void __init do_pre_smp_initcalls(void)
737 migration_init(); 746 migration_init();
738#endif 747#endif
739 spawn_ksoftirqd(); 748 spawn_ksoftirqd();
740 spawn_softlockup_task(); 749 if (!nosoftlockup)
750 spawn_softlockup_task();
741} 751}
742 752
743static void run_init_process(char *init_filename) 753static void run_init_process(char *init_filename)