Author: ian
Date: Wed Feb 13 15:09:16 2013
New Revision: 246763
URL: http://svnweb.freebsd.org/changeset/base/246763

Log:
  Make the F_READAHEAD option to fcntl(2) work as documented:  a value of zero
  now disables read-ahead.  It used to effectively restore the system default
  readahead hueristic if it had been changed; a negative value now restores
  the default.
  
  Reviewed by:  kib

Modified:
  head/lib/libc/sys/fcntl.2
  head/sys/kern/kern_descrip.c

Modified: head/lib/libc/sys/fcntl.2
==============================================================================
--- head/lib/libc/sys/fcntl.2   Wed Feb 13 14:57:54 2013        (r246762)
+++ head/lib/libc/sys/fcntl.2   Wed Feb 13 15:09:16 2013        (r246763)
@@ -28,7 +28,7 @@
 .\"     @(#)fcntl.2    8.2 (Berkeley) 1/12/94
 .\" $FreeBSD$
 .\"
-.Dd July 27, 2012
+.Dd February 8, 2013
 .Dt FCNTL 2
 .Os
 .Sh NAME
@@ -171,7 +171,7 @@ argument,
 which is rounded up to the nearest block size.
 A zero value in
 .Fa arg
-turns off read ahead.
+turns off read ahead, a negative value restores the system default.
 .It Dv F_RDAHEAD
 Equivalent to Darwin counterpart which sets read ahead amount of 128KB
 when the third argument,

Modified: head/sys/kern/kern_descrip.c
==============================================================================
--- head/sys/kern/kern_descrip.c        Wed Feb 13 14:57:54 2013        
(r246762)
+++ head/sys/kern/kern_descrip.c        Wed Feb 13 15:09:16 2013        
(r246763)
@@ -776,7 +776,7 @@ kern_fcntl(struct thread *td, int fd, in
                }
                fhold(fp);
                FILEDESC_SUNLOCK(fdp);
-               if (arg != 0) {
+               if (arg >= 0) {
                        vp = fp->f_vnode;
                        error = vn_lock(vp, LK_SHARED);
                        if (error != 0) {
_______________________________________________
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to