Messages in this thread | | | Subject | Re: [PATCH v4 0/6] fs/dcache: Limit # of negative dentries | From | Waiman Long <> | Date | Wed, 11 Oct 2017 16:47:05 -0400 |
| |
On 10/10/2017 06:54 PM, Andrew Morton wrote: > On Mon, 18 Sep 2017 14:20:28 -0400 Waiman Long <longman@redhat.com> wrote: > >> A rogue application can potentially create a large number of negative >> dentries in the system consuming most of the memory available even if >> memory controller is enabled to limit memory usage. This can impact >> performance of other applications running on the system. > It does seem that under these circumstances it is pretty silly of us to > reclaim useful things in order to instantiate zillions of -ve dentries.
I am talking about a misbehaving program due to bug or an intentional rogue program.
> > Dentries are subject to kmemcg handling. Does this not help avoid > "impacting performance of other applications"?
AFAIK, the dentry kmem_cache isn't memcg aware. So memcg can't really constrain the dentry allocation.
>> We have customers seeing soft lockup and unresponsive system when >> tearing down a container because of the large number of negative >> dentries accumulated during its up time that had to be cleaned up at >> exit time when the container's filesystem was unmounted. So we need >> to do something about it. > It's a somewhat separate issue, but maybe we're missing a cond_resched > somewhere? Seeing such a softlockup's output would help. > I don't have a console log. I got this information indirectly via some of our customer-facing engineers.
Cheers, Longman
| |