summary |
tags |
clone url |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
a9f0e6b)
SCCS-vsn: sys/vax/uba/dmx.c 1.5
* All rights reserved. The Berkeley software License Agreement
* specifies the terms and conditions for redistribution.
*
* All rights reserved. The Berkeley software License Agreement
* specifies the terms and conditions for redistribution.
*
- * @(#)dmx.c 1.4 (Berkeley) %G%
+ * @(#)dmx.c 1.5 (Berkeley) %G%
#include "uio.h"
#include "kernel.h"
#include "syslog.h"
#include "uio.h"
#include "kernel.h"
#include "syslog.h"
#include "dmx.h"
#include "ubareg.h"
#include "dmx.h"
#include "ubareg.h"
register struct tty *tp;
register struct dmx_softc *sc;
{
register struct tty *tp;
register struct dmx_softc *sc;
{
+ int s, unit, error = 0;
int dmxparam();
s = spltty();
int dmxparam();
s = spltty();
tp->t_cflag&CLOCAL)
break;
tp->t_state |= TS_WOPEN;
tp->t_cflag&CLOCAL)
break;
tp->t_state |= TS_WOPEN;
- tsleep((caddr_t)&tp->t_rawq, TTIPRI, SLP_DMX_OPN, 0);
+ if (error = tsleep((caddr_t)&tp->t_rawq, TTIPRI | PCATCH,
+ ttopen, 0))
+ break;
+ if (error)
+ return (error);
return ((*linesw[tp->t_line].l_open)(tp->t_dev, tp));
}
return ((*linesw[tp->t_line].l_open)(tp->t_dev, tp));
}
(void) dmxmctl(tp, DMF_BRK, DMBIC);
if (tp->t_cflag & HUPCL || (tp->t_state & TS_ISOPEN) == 0)
(void) dmxmctl(tp, DMF_OFF, DMSET);
(void) dmxmctl(tp, DMF_BRK, DMBIC);
if (tp->t_cflag & HUPCL || (tp->t_state & TS_ISOPEN) == 0)
(void) dmxmctl(tp, DMF_OFF, DMSET);