Kernel - more NFS fixes, more dirty bit fixes, remove vfs_bio_set_validclean()
authorMatthew Dillon <dillon@apollo.backplane.com>
Mon, 24 Aug 2009 23:27:32 +0000 (16:27 -0700)
committerMatthew Dillon <dillon@apollo.backplane.com>
Mon, 24 Aug 2009 23:27:32 +0000 (16:27 -0700)
commit1a54183b97974fc4fb7e564cf05a7e94db2a31c6
treef8acd701c7df7705c07a0da83c37a4ee16cee053
parent28953d39b23eec3fbd96a46ca2c4946bfe8d1a61
Kernel - more NFS fixes, more dirty bit fixes, remove vfs_bio_set_validclean()

* Remove vfs_bio_set_validclean().  It is no longer needed.

* General getpages operations must clear dirty bits non-inclusive of
  the end of the range.  A read which partially overlaps dirty VM
  pages shouldn't happen in the first place but if it were to happen
  we don't want to lose the dirty status on the DEV_BSIZE'd chunk
  straddling the end of the read.

* General truncation support.  Replace previous fix with a call to
  a new inline, vm_page_clear_dirty_beg_nonincl().  Similar to
  the getpages() issue, we do not want to lose the dirty status
  on the DEV_BSIZE'd chunk straddling the beginning of a truncation.

  (side note: Only effecs NFS as all other filesystems DEV_BSIZE-align
  their operations, but a good general fix in anycase).
sys/kern/vfs_bio.c
sys/sys/buf.h
sys/vfs/devfs/devfs_vnops.c
sys/vfs/nfs/nfs_bio.c
sys/vm/vm_page.c
sys/vm/vm_page.h
sys/vm/vm_page2.h
sys/vm/vnode_pager.c