Module Name: src Committed By: bouyer Date: Tue Oct 17 13:27:58 UTC 2023
Modified Files: src/sys/arch/xen/x86: pvh_consinit.c Log Message: Make sure to always fall back to xen_early_console, even for dom0 To generate a diff of this commit: cvs rdiff -u -r1.5 -r1.6 src/sys/arch/xen/x86/pvh_consinit.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/arch/xen/x86/pvh_consinit.c diff -u src/sys/arch/xen/x86/pvh_consinit.c:1.5 src/sys/arch/xen/x86/pvh_consinit.c:1.6 --- src/sys/arch/xen/x86/pvh_consinit.c:1.5 Mon Oct 16 17:31:18 2023 +++ src/sys/arch/xen/x86/pvh_consinit.c Tue Oct 17 13:27:58 2023 @@ -1,4 +1,4 @@ -/* $NetBSD: pvh_consinit.c,v 1.5 2023/10/16 17:31:18 bouyer Exp $ */ +/* $NetBSD: pvh_consinit.c,v 1.6 2023/10/17 13:27:58 bouyer Exp $ */ /* * Copyright (c) 2020 Manuel Bouyer. @@ -26,7 +26,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: pvh_consinit.c,v 1.5 2023/10/16 17:31:18 bouyer Exp $"); +__KERNEL_RCSID(0, "$NetBSD: pvh_consinit.c,v 1.6 2023/10/17 13:27:58 bouyer Exp $"); #include "xencons.h" #include <sys/param.h> @@ -51,6 +51,11 @@ xen_pvh_consinit(void) * boot stage. */ static int initted = 0; + + if (initted == 0) { + /* fall back to printk() until we can setup our console */ + xen_early_console(); + } if (xendomain_is_dom0()) { union xen_cmdline_parseinfo xcp; xen_parse_cmdline(XEN_PARSE_CONSOLE, &xcp); @@ -61,12 +66,12 @@ xen_pvh_consinit(void) if (strcmp(xcp.xcp_console, "tty0") == 0 || /* linux name */ strcmp(xcp.xcp_console, "pc") == 0) { /* NetBSD name */ #endif /* CONS_OVERRIDE */ + initted++; return 0; /* native console code will do it */ } } if (initted == 0 && !xendomain_is_dom0()) { - /* pmap not up yet, fall back to printk() */ - xen_early_console(); + /* pmap not up yet */ initted++; return 1; } else if (initted > 1) {