rem: for (;;) {
context: kernel_debugger_loop(void){	struct debugger_command *cmd;	int argc;	dprintf("Running on CPU %d\n", smp_get_current_cpu());	if (sBlueScreenEnabled && sBlueScreenGetChar == NULL)		dprintf("Only serial keyboard input available.\n");	sDebuggerOnCPU = smp_get_current_cpu();	cmd = NULL;	for (;;) {		dprintf("kdebug> ");		read_line(line_buf[cur_line], LINE_BUF_SIZE);		parse_line(line_buf[cur_line], args, &argc, MAX_ARGS);		// We support calling last executed command again if		// B_KDEDUG_CONT was returned last time, so cmd != NULL		if (argc <= 0 && cmd == NULL)			continue;		sDebuggerOnCPU = smp_get_current_cpu();		if (argc > 0)			cmd = find_command(args[0]);		if (cmd == NULL)			dprintf("unknown command, enter \"help\" to get a list of all supported commands\n");		else {			int rc = cmd->func(argc, args);			if (rc == B_KDEBUG_QUIT)				break;	// okay, exit now.			if (rc != B_KDEBUG_CONT)				cmd = NULL;		// forget last command executed...		}		cur_line++;		if (cur_line >= HISTORY_SIZE)			cur_line = 0;	}}