Messages in this thread | | | Date | Wed, 5 Oct 2005 01:13:49 +0530 | From | Dipankar Sarma <> | Subject | Re: dentry_cache using up all my zone normal memory -- also seen on 2.6.14-rc2 |
| |
On Thu, Sep 22, 2005 at 09:16:58AM -0600, Christopher Friesen wrote: > Al Viro wrote: > > >Umm... How many RCU callbacks are pending? > > I added an atomic counter that is incremented just before call_rcu() in > d_free(), and decremented just after kmem_cache_free() in d_callback(). > > According to this we had 4127306 pending rcu callbacks. A few seconds > later it was down to 0. > > > /proc/sys/fs/dentry-state: > 1611 838 45 0 0 0 >
Hmm.. This clearly indicates that there are very few allocated dentries and they are just not returned to slab by RCU.
Since then, I have done some testing myself, but I can't reproduce this problem in two of my systems - x86 and x86_64. I ran rename14 in a loop too, but after exhausting a lot of free memory, dcache does get shrunk and I don't see dentries stuck in RCU queues at all. I tried UP kernel too.
So, there must be something else in your system that I am missing in my setup. Could you please mail me your .config ?
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/
| |