diff options
author | peter <peter@FreeBSD.org> | 2002-02-08 09:16:57 +0000 |
---|---|---|
committer | peter <peter@FreeBSD.org> | 2002-02-08 09:16:57 +0000 |
commit | 0c6681c43533865b76871ae8cc3e499803e46d29 (patch) | |
tree | 8091da17dd8645f9f34dbf5ff02225f6c76be624 | |
parent | 3589cfc9929e9a7140446f114e94ea86c45b6398 (diff) | |
download | FreeBSD-src-0c6681c43533865b76871ae8cc3e499803e46d29.zip FreeBSD-src-0c6681c43533865b76871ae8cc3e499803e46d29.tar.gz |
Fix broken Giant locking protocol introduced in rev 1.114. You cannot
unlock Giant if it is not locked in the first place. This make the
nfstat(2) syscall (#278) a nice panic(2) implementation.
-rw-r--r-- | sys/kern/kern_descrip.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/sys/kern/kern_descrip.c b/sys/kern/kern_descrip.c index 7767990..ea7fa2d 100644 --- a/sys/kern/kern_descrip.c +++ b/sys/kern/kern_descrip.c @@ -800,6 +800,7 @@ nfstat(td, uap) struct nstat nub; int error; + mtx_lock(&Giant); if ((error = fget(td, uap->fd, &fp)) != 0) goto done2; error = fo_stat(fp, &ub, td); |