[Midnightbsd-cvs] src [7926] trunk/sys/kern/vfs_vnops.c: count and export the number of prefaulting happen.
laffer1 at midnightbsd.org
laffer1 at midnightbsd.org
Wed Sep 14 17:00:38 EDT 2016
Revision: 7926
http://svnweb.midnightbsd.org/src/?rev=7926
Author: laffer1
Date: 2016-09-14 17:00:38 -0400 (Wed, 14 Sep 2016)
Log Message:
-----------
count and export the number of prefaulting happen.
Obtained from: FreeBSD
Modified Paths:
--------------
trunk/sys/kern/vfs_vnops.c
Modified: trunk/sys/kern/vfs_vnops.c
===================================================================
--- trunk/sys/kern/vfs_vnops.c 2016-09-14 20:52:11 UTC (rev 7925)
+++ trunk/sys/kern/vfs_vnops.c 2016-09-14 21:00:38 UTC (rev 7926)
@@ -56,6 +56,7 @@
#include <sys/filio.h>
#include <sys/resourcevar.h>
#include <sys/sx.h>
+#include <sys/sysctl.h>
#include <sys/ttycom.h>
#include <sys/conf.h>
#include <sys/syslog.h>
@@ -766,6 +767,9 @@
}
static const int io_hold_cnt = 16;
+static unsigned long vn_io_faults_cnt;
+SYSCTL_LONG(_debug, OID_AUTO, vn_io_faults, CTLFLAG_RD,
+ &vn_io_faults_cnt, 0, "Count of vn_io_fault lock avoidance triggers");
/*
* The vn_io_fault() is a wrapper around vn_read() and vn_write() to
@@ -863,6 +867,7 @@
if (error != EFAULT)
goto out;
+ atomic_add_long(&vn_io_faults_cnt, 1);
uio_clone->uio_segflg = UIO_NOCOPY;
uiomove(NULL, resid - uio->uio_resid, uio_clone);
uio_clone->uio_segflg = uio->uio_segflg;
More information about the Midnightbsd-cvs
mailing list