summaryrefslogtreecommitdiffstats
path: root/sys/kern/tty_pty.c
diff options
context:
space:
mode:
authorphk <phk@FreeBSD.org>2004-09-16 12:07:25 +0000
committerphk <phk@FreeBSD.org>2004-09-16 12:07:25 +0000
commita64f45cafb571c4dd25f194a89774b2a7a9a0afb (patch)
tree04257c8a509f87bbbd6cf701418d8be725e48c11 /sys/kern/tty_pty.c
parent8d40fffd0659c126f531839100446b37981db80e (diff)
downloadFreeBSD-src-a64f45cafb571c4dd25f194a89774b2a7a9a0afb.zip
FreeBSD-src-a64f45cafb571c4dd25f194a89774b2a7a9a0afb.tar.gz
Use the tty->t_sc field to find our softc.
Diffstat (limited to 'sys/kern/tty_pty.c')
-rw-r--r--sys/kern/tty_pty.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/sys/kern/tty_pty.c b/sys/kern/tty_pty.c
index 13b48be..5a827ec 100644
--- a/sys/kern/tty_pty.c
+++ b/sys/kern/tty_pty.c
@@ -154,6 +154,7 @@ ptyinit(struct cdev *devc)
pt->devc = devc;
pt->pt_tty = ttymalloc(pt->pt_tty);
+ pt->pt_tty->t_sc = pt;
devs->si_drv1 = devc->si_drv1 = pt;
devs->si_tty = devc->si_tty = pt->pt_tty;
pt->pt_tty->t_dev = devs;
@@ -246,7 +247,7 @@ ptswrite(struct cdev *dev, struct uio *uio, int flag)
static void
ptsstart(struct tty *tp)
{
- struct ptsc *pt = tp->t_dev->si_drv1;
+ struct ptsc *pt = tp->t_sc;
if (tp->t_state & TS_TTSTOP)
return;
@@ -260,7 +261,7 @@ ptsstart(struct tty *tp)
static void
ptcwakeup(struct tty *tp, int flag)
{
- struct ptsc *pt = tp->t_dev->si_drv1;
+ struct ptsc *pt = tp->t_sc;
if (flag & FREAD) {
selwakeuppri(&pt->pt_selr, TTIPRI);
@@ -385,7 +386,7 @@ ptcread(struct cdev *dev, struct uio *uio, int flag)
static void
ptsstop(struct tty *tp, int flush)
{
- struct ptsc *pt = tp->t_dev->si_drv1;
+ struct ptsc *pt = tp->t_sc;
int flag;
/* note: FLUSHREAD and FLUSHWRITE already ok */
OpenPOWER on IntegriCloud