summaryrefslogtreecommitdiffstats
path: root/sys/fs
diff options
context:
space:
mode:
authorjhb <jhb@FreeBSD.org>2001-07-18 19:17:36 +0000
committerjhb <jhb@FreeBSD.org>2001-07-18 19:17:36 +0000
commit99b71dfa30b022850a80e470aee72b6362f8aa53 (patch)
tree775b8b2a98602f1395a0cdf62a50a4316a28695f /sys/fs
parent7f754d6b280271ca989f16356f63ae8cdc719667 (diff)
downloadFreeBSD-src-99b71dfa30b022850a80e470aee72b6362f8aa53.zip
FreeBSD-src-99b71dfa30b022850a80e470aee72b6362f8aa53.tar.gz
Grab the process lock around psignal().
Noticed by: tanimura
Diffstat (limited to 'sys/fs')
-rw-r--r--sys/fs/smbfs/smbfs_io.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/sys/fs/smbfs/smbfs_io.c b/sys/fs/smbfs/smbfs_io.c
index 505c906..0f3f20e 100644
--- a/sys/fs/smbfs/smbfs_io.c
+++ b/sys/fs/smbfs/smbfs_io.c
@@ -273,7 +273,9 @@ smbfs_writevnode(struct vnode *vp, struct uio *uiop,
if (uiop->uio_resid == 0)
return 0;
if (p && uiop->uio_offset + uiop->uio_resid > p->p_rlimit[RLIMIT_FSIZE].rlim_cur) {
+ PROC_LOCK(p);
psignal(p, SIGXFSZ);
+ PROC_UNLOCK(p);
return EFBIG;
}
smb_makescred(&scred, p, cred);
OpenPOWER on IntegriCloud