svn commit: r201777 -
stable/8/sys/cddl/contrib/opensolaris/uts/common/fs/zfs
Alexander Leidinger
netchild at FreeBSD.org
Fri Jan 8 09:59:14 UTC 2010
Author: netchild
Date: Fri Jan 8 09:59:13 2010
New Revision: 201777
URL: http://svn.freebsd.org/changeset/base/201777
Log:
MFC r197816:
---snip---
Prevent paging pressure from draining arc too much
- always drain arc if above arc_c_max - never drain arc if arc is below
arc_c_max
---snip---
Modified:
stable/8/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c
Directory Properties:
stable/8/sys/ (props changed)
stable/8/sys/amd64/include/xen/ (props changed)
stable/8/sys/cddl/contrib/opensolaris/ (props changed)
stable/8/sys/contrib/dev/acpica/ (props changed)
stable/8/sys/contrib/pf/ (props changed)
stable/8/sys/dev/xen/xenpci/ (props changed)
Modified: stable/8/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c
==============================================================================
--- stable/8/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c Fri Jan 8 09:31:19 2010 (r201776)
+++ stable/8/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c Fri Jan 8 09:59:13 2010 (r201777)
@@ -1821,6 +1821,12 @@ arc_reclaim_needed(void)
#endif
#ifdef _KERNEL
+ if (needfree)
+ return (1);
+ if (arc_size > arc_c_max)
+ return (1);
+ if (arc_size <= arc_c_min)
+ return (0);
/*
* If pages are needed or we're within 2048 pages
@@ -1829,9 +1835,6 @@ arc_reclaim_needed(void)
if (vm_pages_needed || (vm_paging_target() > -2048))
return (1);
- if (needfree)
- return (1);
-
#if 0
/*
* take 'desfree' extra pages, so we reclaim sooner, rather than later
More information about the svn-src-stable
mailing list