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

MFC after:	3 days
This commit is contained in:
kmacy 2009-10-06 21:40:50 +00:00
parent ef46e20857
commit 3665e257c1

View File

@ -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