Re: [PATCH] proc/sysctl: prune stale dentries during unregistering

From: Eric W. Biederman
Date: Mon Feb 13 2017 - 04:59:03 EST


Konstantin Khlebnikov <khlebnikov@xxxxxxxxxxxxxx> writes:

> On 10.02.2017 10:47, Al Viro wrote:
>> On Fri, Feb 10, 2017 at 10:35:02AM +0300, Konstantin Khlebnikov wrote:
>>
>>> # time sysctl -a > /dev/null
>>> real 1m12.806s
>>> user 0m0.016s
>>> sys 1m12.400s
>>>
>>> Currently only memory reclaimer could remove this garbage.
>>> But without significant memory pressure this never happens.
>>>
>>> This patch collects sysctl inodes into list on sysctl table header and
>>> prunes all their dentries once that table unregisters.
>>
>> I'd probably go for hlist, but that's mostly cosmetic difference; how about
>> the matching stats *after* that patch?
>>
>
> dcache size doesn't grow endlessly, so stats are fine
>
> # sysctl fs.dentry-state
> fs.dentry-state = 92712 58376 45 0 0 0
>
> # time sysctl -a &>/dev/null
>
> real 0m0.013s
> user 0m0.004s
> sys 0m0.008s

Applied thanks,

Eric