Date: Wed, 29 Aug 2012 15:34:26 +0000 (UTC) From: Konstantin Belousov <kib@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r239839 - stable/9/sys/kern Message-ID: <201208291534.q7TFYQUn069096@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: kib Date: Wed Aug 29 15:34:26 2012 New Revision: 239839 URL: http://svn.freebsd.org/changeset/base/239839 Log: MFC r236517: Add a knob to disable vn_io_fault. MFC note: by default, vn_io_fault for stable/9 is disabled. Modified: stable/9/sys/kern/vfs_vnops.c Directory Properties: stable/9/sys/ (props changed) Modified: stable/9/sys/kern/vfs_vnops.c ============================================================================== --- stable/9/sys/kern/vfs_vnops.c Wed Aug 29 15:28:38 2012 (r239838) +++ stable/9/sys/kern/vfs_vnops.c Wed Aug 29 15:34:26 2012 (r239839) @@ -767,6 +767,9 @@ unlock: } static const int io_hold_cnt = 16; +static int vn_io_fault_enable = 0; +SYSCTL_INT(_debug, OID_AUTO, vn_io_fault_enable, CTLFLAG_RW, + &vn_io_fault_enable, 0, "Enable vn_io_fault lock avoidance"); 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"); @@ -829,7 +832,8 @@ vn_io_fault(struct file *fp, struct uio vp = fp->f_vnode; if (uio->uio_segflg != UIO_USERSPACE || vp->v_type != VREG || ((mp = vp->v_mount) != NULL && - (mp->mnt_kern_flag & MNTK_NO_IOPF) == 0)) + (mp->mnt_kern_flag & MNTK_NO_IOPF) == 0) || + !vn_io_fault_enable) return (doio(fp, uio, active_cred, flags, td)); /*
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201208291534.q7TFYQUn069096>