Kernel: Add command line option to boot without smp
This commit is contained in:
		
							parent
							
								
									77b5e6d44a
								
							
						
					
					
						commit
						86b6714777
					
				|  | @ -33,8 +33,9 @@ | ||||||
| 
 | 
 | ||||||
| struct ParsedCommandLine | struct ParsedCommandLine | ||||||
| { | { | ||||||
| 	bool force_pic		= false; | 	bool force_pic          = false; | ||||||
| 	bool disable_serial	= false; | 	bool disable_serial     = false; | ||||||
|  | 	bool disable_smp        = false; | ||||||
| 	BAN::StringView console = "tty0"_sv; | 	BAN::StringView console = "tty0"_sv; | ||||||
| 	BAN::StringView root; | 	BAN::StringView root; | ||||||
| }; | }; | ||||||
|  | @ -71,6 +72,8 @@ static void parse_command_line() | ||||||
| 			cmdline.force_pic = true; | 			cmdline.force_pic = true; | ||||||
| 		else if (argument == "noserial") | 		else if (argument == "noserial") | ||||||
| 			cmdline.disable_serial = true; | 			cmdline.disable_serial = true; | ||||||
|  | 		else if (argument == "nosmp") | ||||||
|  | 			cmdline.disable_smp = true; | ||||||
| 		else if (argument.size() > 5 && argument.substring(0, 5) == "root=") | 		else if (argument.size() > 5 && argument.substring(0, 5) == "root=") | ||||||
| 			cmdline.root = argument.substring(5); | 			cmdline.root = argument.substring(5); | ||||||
| 		else if (argument.size() > 8 && argument.substring(0, 8) == "console=") | 		else if (argument.size() > 8 && argument.substring(0, 8) == "console=") | ||||||
|  | @ -140,7 +143,8 @@ extern "C" void kernel_main(uint32_t boot_magic, uint32_t boot_info) | ||||||
| 	if (g_terminal_driver) | 	if (g_terminal_driver) | ||||||
| 		dprintln("Framebuffer terminal initialized"); | 		dprintln("Framebuffer terminal initialized"); | ||||||
| 
 | 
 | ||||||
| 	InterruptController::get().initialize_multiprocessor(); | 	if (!cmdline.disable_smp) | ||||||
|  | 		InterruptController::get().initialize_multiprocessor(); | ||||||
| 
 | 
 | ||||||
| 	ProcFileSystem::initialize(); | 	ProcFileSystem::initialize(); | ||||||
| 	dprintln("procfs initialized"); | 	dprintln("procfs initialized"); | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue