svn commit: r259765 - in head/sys: fs/nfsserver nfs nfsserver
Alexander Motin
mav at FreeBSD.org
Mon Dec 23 11:35:57 UTC 2013
On 23.12.2013 13:14, Konstantin Belousov wrote:
> On Mon, Dec 23, 2013 at 08:43:17AM +0000, Alexander Motin wrote:
>> Author: mav
>> Date: Mon Dec 23 08:43:16 2013
>> New Revision: 259765
>> URL: http://svnweb.freebsd.org/changeset/base/259765
>>
>> Log:
>> Fix RPC server threads file handle affinity to work better with ZFS.
>>
>> Instead of taking 8 specific bytes of file handle to identify file during
>> RPC thread affitinity handling, use trivial hash of the full file handle.
>> ZFS's struct zfid_short does not have padding field after the length field,
>> as result, originally picked 8 bytes are loosing lower 16 bits of object ID,
>> causing many false matches and unneeded requests affinity to same thread.
>> This fix substantially improves NFS server latency and scalability in SPEC
>> NFS benchmark by more flexible use of multiple NFS threads.
>>
>> Sponsored by: iXsystems, Inc.
>
> Did you audited all other filesystems to ensure that struct fid.
> fid_data0 is filled (zeroed) consistently ?
Yes, I did a tree search and in all found cases the structure was
pre-erased.
> Also, this constitues subtle VFS KBI change.
In what way it touched VFS KBI? I indeed modified RPC FHA KPI to make it
more safe, but I don't see how it may touch anything else then two of
our NFS servers.
--
Alexander Motin
More information about the svn-src-all
mailing list