Module Name: src Committed By: riastradh Date: Sun Mar 29 15:08:04 UTC 2015
Modified Files: src/sys/kern: subr_copy.c Log Message: Use #ifdef _RUMPKERNEL for now to prefer copyout over kcopy in tests. Gross -- please fix me if you have a better approach. To generate a diff of this commit: cvs rdiff -u -r1.3 -r1.4 src/sys/kern/subr_copy.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/kern/subr_copy.c diff -u src/sys/kern/subr_copy.c:1.3 src/sys/kern/subr_copy.c:1.4 --- src/sys/kern/subr_copy.c:1.3 Sun Mar 29 15:05:34 2015 +++ src/sys/kern/subr_copy.c Sun Mar 29 15:08:03 2015 @@ -1,4 +1,4 @@ -/* $NetBSD: subr_copy.c,v 1.3 2015/03/29 15:05:34 riastradh Exp $ */ +/* $NetBSD: subr_copy.c,v 1.4 2015/03/29 15:08:03 riastradh Exp $ */ /*- * Copyright (c) 1997, 1998, 1999, 2002, 2007, 2008 The NetBSD Foundation, Inc. @@ -79,7 +79,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: subr_copy.c,v 1.3 2015/03/29 15:05:34 riastradh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: subr_copy.c,v 1.4 2015/03/29 15:08:03 riastradh Exp $"); #include <sys/param.h> #include <sys/fcntl.h> @@ -211,6 +211,11 @@ copyin_vmspace(struct vmspace *vm, const if (len == 0) return (0); +#ifdef _RUMPKERNEL /* XXX */ + if (__predict_true(vm == curproc->p_vmspace)) { + return copyin(uaddr, kaddr, len); + } +#endif if (VMSPACE_IS_KERNEL_P(vm)) { return kcopy(uaddr, kaddr, len); } @@ -244,6 +249,11 @@ copyout_vmspace(struct vmspace *vm, cons if (len == 0) return (0); +#ifdef _RUMPKERNEL /* XXX */ + if (__predict_true(vm == curproc->p_vmspace)) { + return copyout(kaddr, uaddr, len); + } +#endif if (VMSPACE_IS_KERNEL_P(vm)) { return kcopy(kaddr, uaddr, len); }