]> granicus.if.org Git - zfs/commit
Enforce ARC meta-data limits
authorBrian Behlendorf <behlendorf1@llnl.gov>
Thu, 31 Mar 2011 01:59:17 +0000 (18:59 -0700)
committerBrian Behlendorf <behlendorf1@llnl.gov>
Thu, 21 Apr 2011 20:49:31 +0000 (13:49 -0700)
commit6a8f9b6bf0de3e3d09fcfa32e129c978e7641a8f
treede1a73aad01836cd40e8473646f28c148df29e5c
parent36df284366caa77cb40083d2e6bcce02274e2f05
Enforce ARC meta-data limits

This change ensures the ARC meta-data limits are enforced.  Without
this enforcement meta-data can grow to consume all of the ARC cache
pushing out data and hurting performance.  The cache is aggressively
reclaimed but this is a soft and not a hard limit.  The cache may
exceed the set limit briefly before being brought under control.

By default 25% of the ARC capacity can be used for meta-data.  This
limit can be tuned by setting the 'zfs_arc_meta_limit' module option.
Once this limit is exceeded meta-data reclaim will occur in 3 percent
chunks, or may be tuned using 'arc_reduce_dnlc_percent'.

Closes #193
module/zfs/arc.c