freebsd-src/sys
Mark Johnston c676692c61 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
2019-03-17 17:34:06 +00:00
..
amd64 amd64 KPTI: add control from procctl(2). 2019-03-16 11:44:33 +00:00
arm amd64 KPTI: add control from procctl(2). 2019-03-16 11:44:33 +00:00
arm64 amd64 KPTI: add control from procctl(2). 2019-03-16 11:44:33 +00:00
bsm Create new EINTEGRITY error with message "Integrity check failed". 2019-01-17 06:35:45 +00:00
cam Upgrade Chipfancier SLC quirk to all versions 2019-03-11 20:57:54 +00:00
cddl MFV r336930: 9284 arc_reclaim_thread has 2 jobs 2019-03-15 18:59:04 +00:00
compat amd64 KPTI: add control from procctl(2). 2019-03-16 11:44:33 +00:00
conf cxgbe(4): Update T4/5/6 firmwares to 1.23.0.0. 2019-03-13 06:46:15 +00:00
contrib Remove radeonkmsfw firmware files 2019-03-14 17:05:46 +00:00
crypto Embedded chacha: Add 0-bit iv + 128-bit counter mode 2019-03-01 23:30:23 +00:00
ddb ddb: Print the thread's pcb in 'show thread' 2019-02-09 21:08:19 +00:00
dev fdt: Explicitly mark fdt_slicer as dependent on geom_flashmap 2019-03-17 04:33:17 +00:00
dts Adapt FreeBSD specific DT stub for Jetson TK1 board to be consistent with 2019-02-06 06:03:44 +00:00
fs Remove unneeded mount point unlock function calls. 2019-03-15 11:49:46 +00:00
gdb
geom stack(9): Drop unused API mode and comment that referenced it 2019-03-15 22:39:55 +00:00
gnu Correct my previous correction to the license. It now matches the text 2019-03-07 22:34:45 +00:00
i386 amd64 KPTI: add control from procctl(2). 2019-03-16 11:44:33 +00:00
isa Reapply, with minor tweaks, r338025, from the original commit: 2018-09-26 17:12:14 +00:00
kern amd64 KPTI: add control from procctl(2). 2019-03-16 11:44:33 +00:00
kgssapi * Handle SIGPIPE in gssd 2019-02-21 01:30:37 +00:00
libkern Add non-sleepable strdup variant strdup_flags 2019-02-20 20:48:10 +00:00
mips amd64 KPTI: add control from procctl(2). 2019-03-16 11:44:33 +00:00
modules cxgbe(4): Update T4/5/6 firmwares to 1.23.0.0. 2019-03-13 06:46:15 +00:00
net if_bridge(4): Drop pointless rtflush 2019-03-15 17:19:36 +00:00
net80211 net80211(4): hide casts for 'i_seq' field offset calculation inside 2019-02-10 23:58:56 +00:00
netgraph Remove 'dir' argument in ng_ipfw_input, since ip_fw_args now has this info. 2019-03-14 22:30:05 +00:00
netinet Remove 'dir' argument from dummynet_io(). This makes it possible to make 2019-03-14 22:32:50 +00:00
netinet6 Update for IETF draft-ietf-6man-ipv6only-flag. 2019-03-07 23:03:39 +00:00
netipsec Remove unused argument to priv_check_cred. 2018-12-11 19:32:16 +00:00
netpfil pf: Rename pfsync bucket lock 2019-03-16 10:14:03 +00:00
netsmb Remove unused argument to priv_check_cred. 2018-12-11 19:32:16 +00:00
nfs
nfsclient
nfsserver
nlm
ofed Mechanical cleanup of epoch(9) usage in network stack. 2019-01-09 01:11:19 +00:00
opencrypto Fix another bug introduced during the review process of r344140: 2019-02-25 19:14:16 +00:00
powerpc amd64 KPTI: add control from procctl(2). 2019-03-16 11:44:33 +00:00
riscv amd64 KPTI: add control from procctl(2). 2019-03-16 11:44:33 +00:00
rpc Bump the default kern.rpc.gss.client_max from 128 to 1024. 2019-02-19 11:07:02 +00:00
security Create new EINTEGRITY error with message "Integrity check failed". 2019-01-17 06:35:45 +00:00
sparc64 amd64 KPTI: add control from procctl(2). 2019-03-16 11:44:33 +00:00
sys Connect lib/libomp to the build. 2019-03-16 15:45:15 +00:00
teken Attempt to complete fixing programmable function keys for syscons. 2019-02-20 02:14:41 +00:00
tests Regularize the Netflix copyright 2019-02-04 21:28:25 +00:00
tools make_dtb.sh: Use $CPP instead of assuming that cpp is in $PATH 2018-12-14 23:53:28 +00:00
ufs Optimize lseek(SEEK_DATA) on UFS. 2019-03-17 17:34:06 +00:00
vm Implement minidump support for RISC-V. 2019-03-06 00:01:06 +00:00
x86 amd64 KPTI: add control from procctl(2). 2019-03-16 11:44:33 +00:00
xdr
xen xen: introduce a new way to setup event channel upcall 2019-01-30 11:34:52 +00:00
Makefile