From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from zeniv.linux.org.uk ([195.92.253.2]:45038 "EHLO ZenIV.linux.org.uk" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726530AbeHQQBd (ORCPT ); Fri, 17 Aug 2018 12:01:33 -0400 Date: Fri, 17 Aug 2018 13:58:12 +0100 From: Al Viro To: Mukesh Ojha Cc: linux-fsdevel@vger.kernel.org, lkml Subject: Re: Query on shrink list Message-ID: <20180817125812.GC6515@ZenIV.linux.org.uk> References: <301a5546-d326-d78e-3be6-41b5a6a08c0e@codeaurora.org> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <301a5546-d326-d78e-3be6-41b5a6a08c0e@codeaurora.org> Sender: linux-fsdevel-owner@vger.kernel.org List-ID: On Fri, Aug 17, 2018 at 03:39:22PM +0530, Mukesh Ojha wrote: > Hi Al Viro, > > Is there is reason we have kept data->found++, if the dentry already there > in shrink list ? > > static enum d_walk_ret select_collect( > ... > ������� if (dentry->d_flags & DCACHE_SHRINK_LIST) { > ��������������� data->found++; > ������� } else { > � .. > > If the dentry is already there on shrink list, does it not mean that > data->found is already non-zero ? Nope. It can be on *another* shrink list - if two processes are doing that... > Can't we just go out from here directly?