[prev in list] [next in list] [prev in thread] [next in thread] 

List:       linux-nfs
Subject:    Re: [PATCH RFC 0/2] Replace file_hashtbl with an rhashtable
From:       Chuck Lever III <chuck.lever () oracle ! com>
Date:       2022-09-29 16:20:59
Message-ID: 890D09EB-ADC7-468F-9E44-A62B38C53D70 () oracle ! com
[Download RAW message or body]



> On Sep 28, 2022, at 6:23 AM, Jeff Layton <jlayton@kernel.org> wrote:
> 
> On Tue, 2022-09-27 at 13:22 -0400, Chuck Lever wrote:
>> Hi, while testing I noticed that sometimes thousands of items are
>> inserted into file_hashtbl, but it's a small fixed-size hash. That
>> makes the buckets in file_hashtbl larger than two or three items.
>> The comparison function (fh_match) used while walking through the
>> buckets is expensive and cache-unfriendly.
>> 
>> The following patches seem to help alleviate that overhead.
>> 
>> ---
>> 
>> Chuck Lever (2):
>>      NFSD: Use const pointers as parameters to fh_ helpers.
>>      NFSD: Use rhashtable for managing nfs4_file objects
>> 
>> 
>> fs/nfsd/nfs4state.c | 227 ++++++++++++++++++++++++++++++--------------
>> fs/nfsd/nfsfh.h     |  10 +-
>> fs/nfsd/state.h     |   5 +-
>> 3 files changed, 162 insertions(+), 80 deletions(-)
>> 
>> --
>> Chuck Lever
>> 
> 
> This set all looks reasonable to me, and I like the idea of moving to
> rhashtable. You can add:
> 
> Reviewed-by: Jeff Layton <jlayton@kernel.org>

Thanks for having a look. I'm not sure I want to push these as soon
as v6.1, as they are quite fresh. That might increase the likelihood
of collisions when you work on cleaning up stateID reference counting.


--
Chuck Lever



[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic