kernel - Finish implementing PG_RAM / pipelined mmap operation
authorMatthew Dillon <dillon@apollo.backplane.com>
Mon, 18 Jan 2010 01:53:47 +0000 (17:53 -0800)
committerMatthew Dillon <dillon@apollo.backplane.com>
Mon, 18 Jan 2010 01:53:47 +0000 (17:53 -0800)
commit1c48c95257b6b028b6cd5f31af60e0d545e951bc
tree952c057974f657efc291efdd92538cd49387a266
parent1b9d3514e66df9d4bc5a25c898c7c8cbe414e3e4
kernel - Finish implementing PG_RAM / pipelined mmap operation

* Finish implementing the PG_RAM read-ahead mark code.  This code
  allows the VM system to generate pipelining faults when reading a
  memory mapped file sequentially.

  This allows programs which scan files via mmap() to max-out the I/O system,
  similar to read().  Before this change programs using mmap() could not get
  better then ~70-80% disk utilization for sequential I/O.

  This commit passes the sequential access flag through to the VOP_GETPAGES
  code which then adjusts the sequential access heuristic in the ioflags
  accordingly.
sys/kern/vfs_default.c
sys/kern/vfs_vopops.c
sys/sys/vfsops.h
sys/vfs/gnu/ext2fs/ext2_vnops.c
sys/vfs/nwfs/nwfs_io.c
sys/vfs/ufs/ufs_readwrite.c
sys/vfs/union/union_vnops.c
sys/vm/vnode_pager.c
sys/vm/vnode_pager.h