lkml.org 
[lkml]   [2005]   [Sep]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: VM balancing issues on 2.6.13: dentry cache not getting shrunk enough
    On Wed, Sep 14, 2005 at 06:34:04PM -0300, Marcelo Tosatti wrote:
    > On Tue, Sep 13, 2005 at 02:17:52PM +0530, Bharata B Rao wrote:
    > > On Sun, Sep 11, 2005 at 11:16:36PM -0400, Theodore Ts'o wrote:
    > >
    > > Ted,
    > >
    > > I am sending two patches here.
    > >
    > > First is dentry_stats patch which collects some dcache statistics
    > > and puts it into /proc/meminfo. This patch provides information
    > > about how dentries are distributed in dcache slab pages, how many
    > > free and in use dentries are present in dentry_unused lru list and
    > > how prune_dcache() performs with respect to freeing the requested
    > > number of dentries.
    >
    > Hi Bharata,
    >
    > +void get_dstat_info(void)
    > +{
    > + struct dentry *dentry;
    > +
    > + lru_dentry_stat.nr_total = lru_dentry_stat.nr_inuse = 0;
    > + lru_dentry_stat.nr_ref = lru_dentry_stat.nr_free = 0;
    > +
    > + spin_lock(&dcache_lock);
    > + list_for_each_entry(dentry, &dentry_unused, d_lru) {
    > + if (atomic_read(&dentry->d_count))
    > + lru_dentry_stat.nr_inuse++;
    >
    > Dentries on dentry_unused list with d_count positive? Is that possible
    > at all? As far as my limited understanding goes, only dentries with zero
    > count can be part of the dentry_unused list.

    That changed during the lock-free dcache implementation during
    2.5. If we strictly update the lru list, we will have to acquire
    the dcache_lock in __d_lookup() on a successful lookup. So we
    did lazy-lru, leave the dentries with non-zero refcounts
    and clean them up later when we acquire dcache_lock for other
    purposes.

    Thanks
    Dipankar
    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2005-09-14 23:51    [W:0.039 / U:1.184 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site