aboutsummaryrefslogtreecommitdiff
path: root/sys/compat/linux/linux_misc.c
diff options
context:
space:
mode:
authorEivind Eklund <eivind@FreeBSD.org>1999-12-15 23:02:35 +0000
committerEivind Eklund <eivind@FreeBSD.org>1999-12-15 23:02:35 +0000
commit762e6b856c64ee48f286a7f0b45d0067e556b252 (patch)
treecf4d02d65f6e44871147fef3ce69de82368a30e5 /sys/compat/linux/linux_misc.c
parent0b994c2e87a9de9d7eb48152a943ca4c21a4f788 (diff)
Notes
Diffstat (limited to 'sys/compat/linux/linux_misc.c')
-rw-r--r--sys/compat/linux/linux_misc.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/sys/compat/linux/linux_misc.c b/sys/compat/linux/linux_misc.c
index 36f1165ca2e94..1835c9ce9480a 100644
--- a/sys/compat/linux/linux_misc.c
+++ b/sys/compat/linux/linux_misc.c
@@ -54,6 +54,7 @@
#include <vm/vm_kern.h>
#include <vm/vm_map.h>
#include <vm/vm_extern.h>
+#include <vm/vm_zone.h>
#include <machine/frame.h>
#include <machine/psl.h>
@@ -194,10 +195,15 @@ linux_uselib(struct proc *p, struct linux_uselib_args *args)
goto cleanup;
vp = ni.ni_vp;
+ /*
+ * XXX This looks like a bogus check - a LOCKLEAF namei should not succeed
+ * without returning a vnode.
+ */
if (vp == NULL) {
error = ENOEXEC; /* ?? */
goto cleanup;
}
+ NDFREE(&ni, NDF_ONLY_PNBUF);
/*
* From here on down, we have a locked vnode that must be unlocked.