summaryrefslogtreecommitdiffstats
path: root/sys/i386/ibcs2/ibcs2_ioctl.c
diff options
context:
space:
mode:
authorjhb <jhb@FreeBSD.org>2001-01-23 23:59:38 +0000
committerjhb <jhb@FreeBSD.org>2001-01-23 23:59:38 +0000
commit80649f2bc14466af487fac64c40a88ede7c20efc (patch)
tree781ea883b6ed60cc23e615d8c1d3f2f82b901dd5 /sys/i386/ibcs2/ibcs2_ioctl.c
parentf5fbc62142d116619713e03561896c38676e6f5c (diff)
downloadFreeBSD-src-80649f2bc14466af487fac64c40a88ede7c20efc.zip
FreeBSD-src-80649f2bc14466af487fac64c40a88ede7c20efc.tar.gz
Proc locking.
Diffstat (limited to 'sys/i386/ibcs2/ibcs2_ioctl.c')
-rw-r--r--sys/i386/ibcs2/ibcs2_ioctl.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/sys/i386/ibcs2/ibcs2_ioctl.c b/sys/i386/ibcs2/ibcs2_ioctl.c
index bc188f4..1350c1a 100644
--- a/sys/i386/ibcs2/ibcs2_ioctl.c
+++ b/sys/i386/ibcs2/ibcs2_ioctl.c
@@ -499,8 +499,11 @@ ibcs2_ioctl(p, uap)
return ioctl(p, (struct ioctl_args *)uap);
case IBCS2_TIOCGPGRP:
- return copyout((caddr_t)&p->p_pgrp->pg_id, SCARG(uap, data),
+ PROC_LOCK(p);
+ error = copyout((caddr_t)&p->p_pgrp->pg_id, SCARG(uap, data),
sizeof(p->p_pgrp->pg_id));
+ PROC_UNLOCK(p);
+ return error;
case IBCS2_TIOCSPGRP: /* XXX - is uap->data a pointer to pgid? */
{
@@ -526,6 +529,7 @@ ibcs2_ioctl(p, uap)
short bitx, bity;
} ibcs2_jwinsize;
+ PROC_LOCK(p);
ibcs2_jwinsize.bytex = 80;
/* p->p_session->s_ttyp->t_winsize.ws_col; XXX */
ibcs2_jwinsize.bytey = 25;
@@ -534,6 +538,7 @@ ibcs2_ioctl(p, uap)
p->p_session->s_ttyp->t_winsize.ws_xpixel;
ibcs2_jwinsize.bity =
p->p_session->s_ttyp->t_winsize.ws_ypixel;
+ PROC_UNLOCK(p);
return copyout((caddr_t)&ibcs2_jwinsize, SCARG(uap, data),
sizeof(ibcs2_jwinsize));
}
OpenPOWER on IntegriCloud