Re: [PATCH] nfsd: Don't keep looking up unhashed files in the nfsd file cache

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




> On Feb 24, 2021, at 3:59 PM, J. Bruce Fields <bfields@xxxxxxxxxxxx> wrote:
> 
> On Thu, Feb 18, 2021 at 09:02:07PM -0500, trondmy@xxxxxxxxxx wrote:
>> From: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
>> 
>> If a file is unhashed, then we're going to reject it anyway and retry,
>> so make sure we skip it when we're doing the RCU lockless lookup.
>> This avoids a number of unnecessary nfserr_jukebox returns from
>> nfsd_file_acquire()
> 
> Looks good to me.--b.

Thanks for the review. This is now included in the for-rc topic branch at:

git://git.kernel.org/pub/scm/linux/kernel/git/cel/linux.git


>> Fixes: 65294c1f2c5e ("nfsd: add a new struct file caching facility to nfsd")
>> Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
>> ---
>> fs/nfsd/filecache.c | 2 ++
>> 1 file changed, 2 insertions(+)
>> 
>> diff --git a/fs/nfsd/filecache.c b/fs/nfsd/filecache.c
>> index 53fcbf79bdca..7629248fdd53 100644
>> --- a/fs/nfsd/filecache.c
>> +++ b/fs/nfsd/filecache.c
>> @@ -898,6 +898,8 @@ nfsd_file_find_locked(struct inode *inode, unsigned int may_flags,
>> 			continue;
>> 		if (!nfsd_match_cred(nf->nf_cred, current_cred()))
>> 			continue;
>> +		if (!test_bit(NFSD_FILE_HASHED, &nf->nf_flags))
>> +			continue;
>> 		if (nfsd_file_get(nf) != NULL)
>> 			return nf;
>> 	}
>> -- 
>> 2.29.2

--
Chuck Lever







[Index of Archives]     [Linux Filesystem Development]     [Linux USB Development]     [Linux Media Development]     [Video for Linux]     [Linux NILFS]     [Linux Audio Users]     [Yosemite Info]     [Linux SCSI]

  Powered by Linux