diff options
Diffstat (limited to 'sys')
-rw-r--r-- | sys/kern/kern_descrip.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/kern/kern_descrip.c b/sys/kern/kern_descrip.c index 6850734e70e4..c2db4c0bbedd 100644 --- a/sys/kern/kern_descrip.c +++ b/sys/kern/kern_descrip.c @@ -668,7 +668,8 @@ kern_fcntl(struct thread *td, int fd, int cmd, intptr_t arg) } VFS_UNLOCK_GIANT(vfslocked); vfslocked = 0; - if (error != 0) { + if (error != 0 || flp->l_type == F_UNLCK || + flp->l_type == F_UNLCKSYS) { fdrop(fp, td); break; } |