freebsd-dev/sys
Alexander Motin bfbfc4a3cb Count consecutive read requests as blocking in CTL for files and ZVOLs.
Technically read requests can be executed in any order or simultaneously
since they are not changing any data.  But ZFS prefetcher goes crasy when
it receives consecutive requests from different threads.  Since prefetcher
works on level of separate blocks, instead of two consecutive 128K requests
it may receive 32 8K requests in mixed order.

This patch is more workaround then a real fix, and it does not fix all of
prefetcher problems, but it improves sequential read speed by 3-4x times
in some configurations.  On the other side it may hurt performance if
some backing store has no prefetch, that is why it is disabled by default
for raw devices.

MFC after:	2 weeks
2014-12-06 20:39:25 +00:00
..
amd64 This configuration file removes several debugging options, including 2014-12-02 19:55:43 +00:00
arm Use the unified syntax when generating assembly for clang. The clang 3.5 2014-12-06 11:59:35 +00:00
boot Define the ffs() function in the USB bootloader's global and 2014-12-05 12:04:47 +00:00
bsm
cam Count consecutive read requests as blocking in CTL for files and ZVOLs. 2014-12-06 20:39:25 +00:00
cddl Apply the same fix in r274697 to the ARM case. 2014-12-06 12:03:09 +00:00
compat The process spin lock currently has the following distinct uses: 2014-11-26 14:10:00 +00:00
conf Ignore more warnings with external gcc 2014-11-29 14:30:39 +00:00
contrib Correctly define constants. 2014-11-28 04:07:06 +00:00
crypto Fix gcc build: preserve const qualifier when casting input values. 2014-11-11 13:37:28 +00:00
ddb ddb: ANSI-fy function declarations. 2014-10-12 18:01:52 +00:00
dev cxgbe(4): allow the driver to use rx buffers that do not end on a pack 2014-12-06 01:47:38 +00:00
fs The process spin lock currently has the following distinct uses: 2014-11-26 14:10:00 +00:00
gdb Add support for gdb's memory searching capabilities to our in-kernel gdb 2014-09-05 16:40:47 +00:00
geom Avoid unneeded malloc/memcpy/free if there is no metadata on disk. 2014-12-05 10:23:18 +00:00
gnu reiserfs: Use signed i_nlink 2014-09-25 19:10:32 +00:00
i386 This configuration file removes several debugging options, including 2014-12-02 19:55:43 +00:00
isa
kern Const poison in a few places to ensure we don't modify things 2014-12-03 22:14:13 +00:00
kgssapi Avoid dynamic syscall overhead for statically compiled modules. 2014-10-26 19:42:44 +00:00
libkern Use the unified syntax in a few more assembly files 2014-12-05 19:08:36 +00:00
mips Switch is an 8316, so make the comments say that. 2014-12-03 23:37:23 +00:00
modules There never was a PC Card joystick attachment that worked. Kill the 2014-11-22 20:31:20 +00:00
net Remove unneded check. No need to do m_pullup to the size that we prepended. 2014-12-02 05:41:03 +00:00
net80211 Fix multiple incorrect SYSCTL arguments in the kernel: 2014-10-21 07:31:21 +00:00
netgraph In preparation of merging projects/sendfile, transform bare access to 2014-11-12 09:57:15 +00:00
netinet Fix the support of mapped IPv4 addresses. 2014-12-06 20:00:08 +00:00
netinet6 This is the SCTP specific companion of 2014-12-04 21:17:50 +00:00
netipsec Fix style(9) and remove m_freem(NULL). 2014-12-04 05:02:12 +00:00
netnatm
netpfil pf(4) needs to have a correct checksum during its processing. 2014-11-19 13:31:08 +00:00
netsmb
nfs Avoid dynamic syscall overhead for statically compiled modules. 2014-10-26 19:42:44 +00:00
nfsclient Follow up to r225617. In order to maximize the re-usability of kernel code 2014-10-16 18:04:43 +00:00
nfsserver Change NFS readdir() to only ignore cookies preceding the given offset for 2014-07-01 20:00:35 +00:00
nlm Avoid dynamic syscall overhead for statically compiled modules. 2014-10-26 19:42:44 +00:00
ofed Start process of removing the use of the deprecated "M_FLOWID" flag 2014-12-01 11:45:24 +00:00
opencrypto Fix build for kernels without COMPAT_FREEBSD32. 2014-09-22 17:32:27 +00:00
pc98 This configuration file removes several debugging options, including 2014-12-02 19:55:43 +00:00
powerpc This configuration file removes several debugging options, including 2014-12-02 19:55:43 +00:00
rpc In preparation of merging projects/sendfile, transform bare access to 2014-11-12 09:57:15 +00:00
security Replace dev_clone with cdevpriv(9) KPI in audit_pipe code. 2014-08-20 16:04:30 +00:00
sparc64 This configuration file removes several debugging options, including 2014-12-02 19:55:43 +00:00
sys Always ignore the deprecated MAP_RENAME and MAP_NORESERVE flags to mmap(). 2014-12-05 15:24:42 +00:00
teken
tools Allow the make_dtb script to work outside of a "make buildkernel" context 2014-08-30 22:39:15 +00:00
ufs Merge from projects/sendfile: 2014-11-23 12:01:52 +00:00
vm Always ignore the deprecated MAP_RENAME and MAP_NORESERVE flags to mmap(). 2014-12-05 15:24:42 +00:00
x86 Improve support for XSAVE with debuggers. 2014-11-21 20:53:17 +00:00
xdr
xen opt_global.h is included automatically in the build. No need to 2014-11-18 17:06:56 +00:00
Makefile Remove "pci" from CSCOPEDIRS. 2014-09-23 06:32:19 +00:00