Received: by 2002:ac0:a5a7:0:0:0:0:0 with SMTP id m36-v6csp888937imm; Wed, 11 Jul 2018 12:48:35 -0700 (PDT) X-Google-Smtp-Source: AAOMgpcS9dAhiQ1cSLlzmxCCKKNiQg2TW6oAsGlYyMlw9UL6zuxAQ+H6ZWR5NHVHvUVDiN/SNOKC X-Received: by 2002:a17:902:6b47:: with SMTP id g7-v6mr9288699plt.251.1531338515678; Wed, 11 Jul 2018 12:48:35 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1531338515; cv=none; d=google.com; s=arc-20160816; b=Z5/e/8iq7y1ncu+zJdRR62PNcD+e6DDuT5WR9m7LxMC0RaEMAyHenQTQz//cpJwkSG 3qr3A0lTyZyDGqAtMBaAORn41Vau/3obYhCA2wGnSV4hU9vTTPaJ2ZhfwYyd5cDGqCE5 0eCK3uGb3AkXUsT9YqIbfFarcf8RE6iO489pPGrYD6AaWVbvqZHuOIbMBvZ4LAS7v8+f GkiI31usN5lcx6pH83D2fPy0uKw4lq6mukT3qfuCZzKGTRp2ShY/vSgqPC7FWVCtoma7 KYJYza5kWf9pO3ZcyO8v10OF0GI1Bne3DlhsgdatkRcOtOf/v5HirzeOOj31qKtlbjZN IYlg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:date:cc:to:from:subject:message-id :dkim-signature:arc-authentication-results; bh=/SO1HrQdMOqs0/xMYpEp24T/rvsrtvMipce8lbtcShI=; b=lvYu7jOlp8idiXDsipu+gQZNSaQItPwqZ6zcE9ksbD9QPds3KEklm367GKHL1JX2sN vJTL/b33KnrJ14CMgKZfIU+8s5L/fsxdJ/rvv7Boi2H7M59yDggcOR6USPmZ5UYKAqU6 Xd7vd5FlDyEq+64bE0a/FplrULhO0yaycNLpSkziOpdROs4uXwmgy6KrAmSC8cPdvpXJ mf8Amoymp56XxgzETQxNg/LiEPaRnH9vvFwedTWJYA5/42Jwic/pE6UxFLUT1gYG83gQ spcQums1gCpSo/wYmKH5kO5TBtwBX3et+6mosaUGyy+r3lk5XOlcUaPqRNymG0fDv97m ll6g== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@hansenpartnership.com header.s=20151216 header.b=s3fs1x0S; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=hansenpartnership.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id j67-v6si5013960pfg.34.2018.07.11.12.48.20; Wed, 11 Jul 2018 12:48:35 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=fail header.i=@hansenpartnership.com header.s=20151216 header.b=s3fs1x0S; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=hansenpartnership.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2388850AbeGKRrx (ORCPT + 99 others); Wed, 11 Jul 2018 13:47:53 -0400 Received: from bedivere.hansenpartnership.com ([66.63.167.143]:56654 "EHLO bedivere.hansenpartnership.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1732359AbeGKRrx (ORCPT ); Wed, 11 Jul 2018 13:47:53 -0400 Received: from localhost (localhost [127.0.0.1]) by bedivere.hansenpartnership.com (Postfix) with ESMTP id 3F6A58EE48E; Wed, 11 Jul 2018 10:42:29 -0700 (PDT) Received: from bedivere.hansenpartnership.com ([127.0.0.1]) by localhost (bedivere.hansenpartnership.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id y68BUJqWWAxd; Wed, 11 Jul 2018 10:42:29 -0700 (PDT) Received: from [153.66.254.194] (unknown [50.35.68.20]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by bedivere.hansenpartnership.com (Postfix) with ESMTPSA id 5480B8EE0E4; Wed, 11 Jul 2018 10:42:28 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=hansenpartnership.com; s=20151216; t=1531330949; bh=/i2uv9lgWVR3en/qN3yD+9oGuCpCbIzxUbuRseOfIfg=; h=Subject:From:To:Cc:Date:In-Reply-To:References:From; b=s3fs1x0S7oC3FInN+Et1coP2A8nYwewOfSfucSrHPMZUgDukF02kq5gnHd2qDpcpx 3WcevZfxiyOCCbBbCrfoSXpFIISsmkTna0FJht2fwVeC6Ys5ung7mu1WB6Jd0n/1vz lnkeLTyhIsrHwg7bvsrom11S8BlnoHBDxr32ZkI4= Message-ID: <1531330947.3260.13.camel@HansenPartnership.com> Subject: Re: [PATCH v6 0/7] fs/dcache: Track & limit # of negative dentries From: James Bottomley To: Waiman Long , Michal Hocko Cc: Alexander Viro , Jonathan Corbet , "Luis R. Rodriguez" , Kees Cook , linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org, linux-mm@kvack.org, linux-doc@vger.kernel.org, Linus Torvalds , Jan Kara , "Paul E. McKenney" , Andrew Morton , Ingo Molnar , Miklos Szeredi , Matthew Wilcox , Larry Woodman , "Wangkai (Kevin C)" Date: Wed, 11 Jul 2018 10:42:27 -0700 In-Reply-To: <9f24c043-1fca-ee86-d609-873a7a8f7a64@redhat.com> References: <1530905572-817-1-git-send-email-longman@redhat.com> <20180709081920.GD22049@dhcp22.suse.cz> <62275711-e01d-7dbe-06f1-bf094b618195@redhat.com> <20180710142740.GQ14284@dhcp22.suse.cz> <20180711102139.GG20050@dhcp22.suse.cz> <9f24c043-1fca-ee86-d609-873a7a8f7a64@redhat.com> Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.22.6 Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, 2018-07-11 at 11:13 -0400, Waiman Long wrote: > On 07/11/2018 06:21 AM, Michal Hocko wrote: > > On Tue 10-07-18 12:09:17, Waiman Long wrote: [...] > > > I am going to reduce the granularity of each unit to 1/1000 of > > > the total system memory so that for large system with TB of > > > memory, a smaller amount of memory can be specified. > > > > It is just a matter of time for this to be too coarse as well. > > The goal is to not have too much memory being consumed by negative > dentries and also the limit won't be reached by regular daily > activities. So a limit of 1/1000 of the total system memory will be > good enough on large memory system even if the absolute number is > really big. OK, I think the reason we're going round and round here without converging is that one of the goals of the mm subsystem is to manage all of our cached objects and to it the negative (and positive) dentries simply look like a clean cache of objects. Right at the moment mm manages them in the same way it manages all the other caches, a lot of which suffer from the "you can cause lots of allocations to artificially grow them" problem. So the main question is why doesn't the current mm control of the caches work well enough for dentries? What are the problems you're seeing that mm should be catching? If you can answer this, then we could get on to whether a separate shrinker, cache separation or some fix in mm itself is the right answer. What you say above is based on a conclusion: limiting dentries improves the system performance. What we're asking for is evidence for that conclusion so we can explore whether the same would go for any of our other system caches (so do we have a global cache management problem or is it only the dentry cache?) James