svn commit: r208564 - head/sys/isa
Jung-uk Kim
jkim at FreeBSD.org
Wed May 26 15:29:54 UTC 2010
Author: jkim
Date: Wed May 26 15:29:53 2010
New Revision: 208564
URL: http://svn.freebsd.org/changeset/base/208564
Log:
Let the first device suspend and the last device resume syscons(4).
Modified:
head/sys/isa/syscons_isa.c
Modified: head/sys/isa/syscons_isa.c
==============================================================================
--- head/sys/isa/syscons_isa.c Wed May 26 11:31:57 2010 (r208563)
+++ head/sys/isa/syscons_isa.c Wed May 26 15:29:53 2010 (r208564)
@@ -116,10 +116,10 @@ scsuspend(device_t dev)
sc = &main_softc;
- if (sc->cur_scp == NULL || sc->suspend_in_progress)
+ if (sc->cur_scp == NULL)
return (0);
- if (!sc_no_suspend_vtswitch) {
+ if (sc->suspend_in_progress == 0 && !sc_no_suspend_vtswitch) {
sc_cur_scr = sc->cur_scp->index;
do {
sc_switch_scr(sc, 0);
@@ -128,8 +128,7 @@ scsuspend(device_t dev)
pause("scsuspend", hz);
} while (retry--);
}
-
- sc->suspend_in_progress = TRUE;
+ sc->suspend_in_progress++;
return (0);
}
@@ -141,12 +140,8 @@ scresume(device_t dev)
sc = &main_softc;
- if (!sc->suspend_in_progress)
- return (0);
-
- sc->suspend_in_progress = FALSE;
-
- if (!sc_no_suspend_vtswitch)
+ sc->suspend_in_progress--;
+ if (sc->suspend_in_progress == 0 && !sc_no_suspend_vtswitch)
sc_switch_scr(sc, sc_cur_scr);
return (0);
More information about the svn-src-head
mailing list