PERFORCE change 200720 for review
John Baldwin
jhb at FreeBSD.org
Tue Oct 25 21:38:31 UTC 2011
http://p4web.freebsd.org/@@200720?ac=10
Change 200720 by jhb at jhb_jhbbsd on 2011/10/25 21:38:07
Properly handle FADV_NORMAL clearing one end of a range when
one edge of the FADV_NORMAL region matches the existing range
exactly.
Affected files ...
.. //depot/projects/fadvise/sys/kern/vfs_syscalls.c#10 edit
Differences ...
==== //depot/projects/fadvise/sys/kern/vfs_syscalls.c#10 (text+ko) ====
@@ -4934,6 +4934,12 @@
if (uap->offset <= fp->f_advstart &&
end >= fp->f_advend)
fp->f_advice = FADV_NORMAL;
+ else if (uap->offset <= fp->f_advstart &&
+ end >= fp->f_advstart)
+ fp->f_advstart = end + 1;
+ else if (uap->offset <= fp->f_advend &&
+ end >= fp->f_advend)
+ fp->f_advend = uap->offset - 1;
else if (uap->offset >= fp->f_advstart &&
end <= fp->f_advend)
/*
@@ -4945,12 +4951,6 @@
* preserve.
*/
fp->f_advice = FADV_NORMAL;
- else if (uap->offset <= fp->f_advstart &&
- end >= fp->f_advstart)
- fp->f_advstart = end + 1;
- else if (uap->offset <= fp->f_advend &&
- end >= fp->f_advstart)
- fp->f_advend = uap->offset - 1;
}
mtx_pool_unlock(mtxpool_sleep, fp);
break;
More information about the p4-projects
mailing list