1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-12-20 11:11:24 +00:00
freebsd/sys/vm
Matthew Dillon 479112dfd9 Remove inappropriate VOP_FSYNC from vm_object_page_clean(). The fsync
syncs the entire underlying file rather then just the requested range,
    resulting in huge inefficiencies when the VM system is articulated in
    a certain way.  The VOP_FSYNC was also found to massively reduce NFS
    performance in certain cases.

    Change MADV_DONTNEED and MADV_FREE to call vm_page_dontneed() instead
    of vm_page_deactivate().  Using vm_page_deactivate() causes all
    inactive and cache pages to be recycled before the dontneed/free page
    is recycled, effectively flushing our entire VM inactive & cache
    queues continuously even if only a few pages are being actively MADV
    free'd and reused (such as occurs with a sequential scan of a
    memory-mapped file).

Reviewed by:	Alan Cox <alc@cs.rice.edu>, David Greenman <dg@root.com>
1999-09-17 05:48:36 +00:00
..
default_pager.c $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
default_pager.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
device_pager.c $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
pmap.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
swap_pager.c Fix a number of spl bugs related to reserving and freeing swap space. 1999-09-17 05:09:24 +00:00
swap_pager.h Fix a number of spl bugs related to reserving and freeing swap space. 1999-09-17 05:09:24 +00:00
vm_extern.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
vm_fault.c $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
vm_glue.c Reviewed by: Alan Cox <alc@cs.rice.edu>, David Greenman <dg@root.com> 1999-09-17 04:56:40 +00:00
vm_inherit.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
vm_init.c $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
vm_kern.c $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
vm_kern.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
vm_map.c $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
vm_map.h Add 'lastr' field to vm_map_entry in preparation for its removal 1999-09-17 05:40:17 +00:00
vm_meter.c Reviewed by: Alan Cox <alc@cs.rice.edu>, David Greenman <dg@root.com> 1999-09-17 04:56:40 +00:00
vm_mmap.c $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
vm_object.c Remove inappropriate VOP_FSYNC from vm_object_page_clean(). The fsync 1999-09-17 05:48:36 +00:00
vm_object.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
vm_page.c Reviewed by: Alan Cox <alc@cs.rice.edu>, David Greenman <dg@root.com> 1999-09-17 04:56:40 +00:00
vm_page.h Reviewed by: Alan Cox <alc@cs.rice.edu>, David Greenman <dg@root.com> 1999-09-17 04:56:40 +00:00
vm_pageout.c Reviewed by: Alan Cox <alc@cs.rice.edu>, David Greenman <dg@root.com> 1999-09-17 04:56:40 +00:00
vm_pageout.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
vm_pager.c Add required BUF_KERNPROC to flushchainbuf() to disassociate the 1999-09-17 05:03:27 +00:00
vm_pager.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
vm_param.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
vm_prot.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
vm_swap.c $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
vm_unix.c $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
vm_zone.c $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
vm_zone.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
vm.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
vnode_pager.c The vnode pager (used when you do file-backed mmaps) must use the 1999-09-17 05:17:59 +00:00
vnode_pager.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00