summaryrefslogtreecommitdiff
path: root/sys/dev/wscons
diff options
context:
space:
mode:
authorMark Kettenis <kettenis@cvs.openbsd.org>2013-05-12 20:41:46 +0000
committerMark Kettenis <kettenis@cvs.openbsd.org>2013-05-12 20:41:46 +0000
commit87cfef69c99a774a31b93383e2224039ac7a2b0d (patch)
tree2e84d572602c851a94c56ecb40b227b8298bcaa7 /sys/dev/wscons
parentfd46a7c12944886430fb10ddf806e223aa230bc9 (diff)
In wsdisplay_switchtoconsole(), make sure we really are the console before
attempting to switch screens. On amd64/i386 the glass console gets initialised early even if a serial console has been set up by the bootloader. To add insult to injury, the glass console isn't properly "detached" and the MI wsdisplay(4) driver continues to believe it is the console. This should really be fixed, but is a nasty can of worms. ok miod@
Diffstat (limited to 'sys/dev/wscons')
-rw-r--r--sys/dev/wscons/wsdisplay.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/dev/wscons/wsdisplay.c b/sys/dev/wscons/wsdisplay.c
index a57b2bc997f..49e91859a9e 100644
--- a/sys/dev/wscons/wsdisplay.c
+++ b/sys/dev/wscons/wsdisplay.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: wsdisplay.c,v 1.107 2013/03/10 13:40:28 kettenis Exp $ */
+/* $OpenBSD: wsdisplay.c,v 1.108 2013/05/12 20:41:45 kettenis Exp $ */
/* $NetBSD: wsdisplay.c,v 1.82 2005/02/27 00:27:52 perry Exp $ */
/*
@@ -2183,7 +2183,7 @@ wsdisplay_switchtoconsole(void)
struct wsdisplay_softc *sc;
struct wsscreen *scr;
- if (wsdisplay_console_device != NULL) {
+ if (wsdisplay_console_device != NULL && cn_tab == &wsdisplay_cons) {
sc = wsdisplay_console_device;
if ((scr = sc->sc_scr[0]) == NULL)
return;