svn commit: r345244 - head/sys/ufs/ufs

Mark Johnston markj at freebsd.org
Sun Mar 17 17:59:06 UTC 2019


On Sun, Mar 17, 2019 at 05:34:06PM +0000, Mark Johnston wrote:
> Author: markj
> Date: Sun Mar 17 17:34:06 2019
> New Revision: 345244
> URL: https://svnweb.freebsd.org/changeset/base/345244
> 
> Log:
>   Optimize lseek(SEEK_DATA) on UFS.
>   
>   The old implementation, at the VFS layer, would map the entire range of
>   logical blocks between the starting offset and the first data block
>   following that offset.  With large sparse files this is very
>   inefficient.  The VFS currently doesn't provide an interface to improve
>   upon the current implementation in a generic way.
>   
>   Add ufs_bmap_seekdata(), which uses the obvious algorithm of scanning
>   indirect blocks to look for data blocks.  Use it instead of
>   vn_bmap_seekhole() to implement SEEK_DATA.
>   
>   Reviewed by:	kib, mckusick
>   MFC after:	2 weeks
>   Sponsored by:	The FreeBSD Foundation
>   Differential Revision:	https://reviews.freebsd.org/D19598

This should have been: https://reviews.freebsd.org/D19599


More information about the svn-src-head mailing list