summaryrefslogtreecommitdiff
path: root/sys/kern/kern_sysctl.c
diff options
context:
space:
mode:
authorBrian Feldman <green@FreeBSD.org>2004-06-11 02:20:37 +0000
committerBrian Feldman <green@FreeBSD.org>2004-06-11 02:20:37 +0000
commitb4adfcf2f4ae75ca472941bff0eef710ec3b6abe (patch)
tree7d2d1815bd7a2bc8d452869fc95d8af86d7f9717 /sys/kern/kern_sysctl.c
parentc066ba2f0178fa1711ddbefdcbfa9f6d67dbe50b (diff)
Notes
Diffstat (limited to 'sys/kern/kern_sysctl.c')
-rw-r--r--sys/kern/kern_sysctl.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/sys/kern/kern_sysctl.c b/sys/kern/kern_sysctl.c
index 79e99a664a2c..39214de4d0c1 100644
--- a/sys/kern/kern_sysctl.c
+++ b/sys/kern/kern_sysctl.c
@@ -1101,8 +1101,11 @@ sysctl_wire_old_buffer(struct sysctl_req *req, size_t len)
req->oldfunc == sysctl_old_user) {
if (wiredlen != 0) {
ret = vslock(req->oldptr, wiredlen);
- if (ret != 0 && ret != ENOMEM)
- return (ret);
+ if (ret != 0) {
+ if (ret != ENOMEM)
+ return (ret);
+ wiredlen = 0;
+ }
}
req->lock = REQ_WIRED;
req->validlen = wiredlen;