Module Name: src Committed By: jdolecek Date: Mon Jan 7 22:48:01 UTC 2019
Modified Files: src/sys/uvm: uvm_meter.c uvm_page.h Log Message: add sysctl to easily set ubc_direct PR kern/53124 To generate a diff of this commit: cvs rdiff -u -r1.68 -r1.69 src/sys/uvm/uvm_meter.c cvs rdiff -u -r1.83 -r1.84 src/sys/uvm/uvm_page.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/uvm/uvm_meter.c diff -u src/sys/uvm/uvm_meter.c:1.68 src/sys/uvm/uvm_meter.c:1.69 --- src/sys/uvm/uvm_meter.c:1.68 Mon Sep 3 16:29:37 2018 +++ src/sys/uvm/uvm_meter.c Mon Jan 7 22:48:01 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: uvm_meter.c,v 1.68 2018/09/03 16:29:37 riastradh Exp $ */ +/* $NetBSD: uvm_meter.c,v 1.69 2019/01/07 22:48:01 jdolecek Exp $ */ /* * Copyright (c) 1997 Charles D. Cranor and Washington University. @@ -36,7 +36,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: uvm_meter.c,v 1.68 2018/09/03 16:29:37 riastradh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: uvm_meter.c,v 1.69 2019/01/07 22:48:01 jdolecek Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -295,6 +295,14 @@ SYSCTL_SETUP(sysctl_vm_setup, "sysctl vm SYSCTL_DESCR("Guard size of other threads"), NULL, 0, &user_thread_stack_guard_size, 0, CTL_VM, VM_THREAD_GUARD_SIZE, CTL_EOL); +#ifdef PMAP_DIRECT + sysctl_createv(clog, 0, NULL, NULL, + CTLFLAG_PERMANENT|CTLFLAG_READWRITE, + CTLTYPE_BOOL, "ubc_direct", + SYSCTL_DESCR("Use direct map for UBC I/O"), + NULL, 0, &ubc_direct, 0, + CTL_VM, CTL_CREATE, CTL_EOL); +#endif uvmpdpol_sysctlsetup(); } Index: src/sys/uvm/uvm_page.h diff -u src/sys/uvm/uvm_page.h:1.83 src/sys/uvm/uvm_page.h:1.84 --- src/sys/uvm/uvm_page.h:1.83 Sat May 19 15:03:26 2018 +++ src/sys/uvm/uvm_page.h Mon Jan 7 22:48:01 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: uvm_page.h,v 1.83 2018/05/19 15:03:26 jdolecek Exp $ */ +/* $NetBSD: uvm_page.h,v 1.84 2019/01/07 22:48:01 jdolecek Exp $ */ /* * Copyright (c) 1997 Charles D. Cranor and Washington University. @@ -337,6 +337,7 @@ struct vm_page *uvm_phys_to_vm_page(padd paddr_t uvm_vm_page_to_phys(const struct vm_page *); #if defined(PMAP_DIRECT) +extern bool ubc_direct; int uvm_direct_process(struct vm_page **, u_int, voff_t, vsize_t, int (*)(void *, size_t, void *), void *); #endif