Prakash Surya 94520ca462 Prune metadata from ghost lists in arc_adjust_meta
To maintain a strict limit on the metadata contained in the arc, while
preventing the arc buffer headers from completely consuming the
"arc_meta_used" space, we need to evict metadata buffers from the arc's
ghost lists along with the regular lists.

This change modifies arc_adjust_meta such that it more closely models
the adjustments made in arc_adjust. "arc_meta_used" is used similarly to
"arc_size", and "arc_meta_limit" is used similarly to "arc_c".

Testing metadata intensive workloads (e.g. creating, copying, and
removing millions of small files and/or directories) has shown this
change to make a dramatic improvement to the hit rate maintained in the
arc. While I think there is still room for improvement, this is a big
step in the right direction.

In addition, zpl_free_cached_objects was made into a no-op as I'm not
yet sure how to properly implement that function.

Signed-off-by: Prakash Surya <surya1@llnl.gov>
Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
Issue #2110
2014-02-21 16:10:49 -08:00
..
2013-12-18 16:46:35 -08:00
2014-02-21 12:10:40 -08:00
2013-01-08 10:35:43 -08:00
2013-01-08 10:35:35 -08:00
2014-01-07 10:33:11 -08:00
2013-11-05 12:15:00 -08:00
2013-11-04 11:27:41 -08:00
2013-11-05 12:15:00 -08:00
2013-12-18 16:46:35 -08:00
2013-12-10 10:09:27 -08:00
2013-11-05 12:23:35 -08:00
2013-11-05 12:23:11 -08:00
2013-09-04 15:49:00 -07:00
2013-11-04 11:18:14 -08:00
2013-09-04 16:01:24 -07:00
2014-02-21 12:10:40 -08:00
2013-09-04 16:01:24 -07:00
2013-11-04 11:17:48 -08:00
2013-11-05 12:25:01 -08:00
2013-09-04 16:01:24 -07:00
2013-09-04 16:01:24 -07:00
2013-09-04 16:01:24 -07:00
2013-09-04 16:01:24 -07:00
2012-03-07 16:28:00 -08:00
2014-02-21 12:10:40 -08:00
2013-11-04 10:55:25 -08:00
2011-02-10 09:21:43 -08:00
2013-11-04 10:55:25 -08:00
2013-12-18 16:46:35 -08:00
2013-05-01 17:05:52 -07:00
2011-03-02 11:43:50 -08:00
2013-11-04 10:55:25 -08:00
2013-11-04 10:55:25 -08:00
2013-09-04 16:01:24 -07:00
2013-11-04 10:55:25 -08:00
2013-12-18 16:46:35 -08:00
2013-12-18 16:46:35 -08:00
2013-12-18 16:46:35 -08:00
2011-02-10 09:27:21 -08:00
2013-12-18 16:46:35 -08:00
2013-11-04 10:55:25 -08:00
2013-12-18 16:46:35 -08:00
2014-01-29 15:50:44 -08:00
2013-08-15 16:19:07 -07:00
2013-12-18 16:46:35 -08:00
2013-12-18 16:46:35 -08:00
2013-11-04 10:55:25 -08:00
2013-11-05 12:14:56 -08:00
2014-02-21 12:10:39 -08:00
2013-12-18 16:46:35 -08:00
2013-12-16 09:15:57 -08:00