Since spltty() will not lower the spl, only raise it, we need to

use splx() to undo the effect of the splzs() in zstty_softint().
This commit is contained in:
scottr 1997-07-23 07:20:01 +00:00
parent 3518ffabce
commit ef7df42303
1 changed files with 4 additions and 4 deletions

View File

@ -1,4 +1,4 @@
/* $NetBSD: z8530tty.c,v 1.11 1997/07/17 02:01:26 jtk Exp $ */
/* $NetBSD: z8530tty.c,v 1.12 1997/07/23 07:20:01 scottr Exp $ */
/*
* Copyright (c) 1994 Gordon W. Ross
@ -1302,7 +1302,7 @@ zstty_softint(cs)
register struct zstty_softc *zst;
register struct linesw *line;
register struct tty *tp;
register int get, c, s;
register int get, c, s, t;
int ringmask, overrun;
register u_short ring_data;
register u_char rr0, delta, flag;
@ -1360,11 +1360,11 @@ zstty_softint(cs)
* so unblock here ONLY if TS_TBLOCK has not been set.
*/
if (zst->zst_rx_blocked && ((tp->t_state & TS_TBLOCK) == 0)) {
(void) splzs();
t = splzs();
zst->zst_rx_blocked = 0;
zs_hwiflow(zst, 0); /* unblock input */
z8530tty_stats.ring_unblock++;
(void) spltty();
splx(t);
}
/*