diff options
author | jhb <jhb@FreeBSD.org> | 2001-07-18 19:17:36 +0000 |
---|---|---|
committer | jhb <jhb@FreeBSD.org> | 2001-07-18 19:17:36 +0000 |
commit | 99b71dfa30b022850a80e470aee72b6362f8aa53 (patch) | |
tree | 775b8b2a98602f1395a0cdf62a50a4316a28695f /sys/fs/smbfs | |
parent | 7f754d6b280271ca989f16356f63ae8cdc719667 (diff) | |
download | FreeBSD-src-99b71dfa30b022850a80e470aee72b6362f8aa53.zip FreeBSD-src-99b71dfa30b022850a80e470aee72b6362f8aa53.tar.gz |
Grab the process lock around psignal().
Noticed by: tanimura
Diffstat (limited to 'sys/fs/smbfs')
-rw-r--r-- | sys/fs/smbfs/smbfs_io.c | 2 |
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); |