Project

General

Profile

Actions

Bug #13848

closed

nfssrv: excessive crdup/crfree cause bottleneck after fixing 6770

Added by Vitaliy Gusev 6 months ago. Updated 5 months ago.

Status:
Closed
Priority:
Normal
Assignee:
Category:
-
Start date:
Due date:
% Done:

100%

Estimated time:
Difficulty:
Medium
Tags:
Gerrit CR:

Description

crget/crdup/crfree are heavy as they calls zone_cred_hold/zone_cred_fini functions and those takes zone's mutex. Effect is like global mutex is taken.

Two socket systems show significant nfs-server performance bottleneck when testing with 10GbE network.

NFSv3, NFSv4 protocols are affected. To check to run dtrace script and look correlation between calls and calling crget/crdup functions :

dtrace -n 'zone_cred_hold:entry,zone_cred_rele:entry{@a=count();} common_dispatch:entry{@r=count()} tick-10s{printa(@a,@r); trunc(@a); trunc(@r);}'

Commit

commit 12fb3699cf98503685902fe0309c546343340e61
Author: Marcel Telka <marcel.telka@nexenta.com>
Date:   Wed Mar 23 01:30:16 2016 +0100

6770 nfsauth_retrieve() flood caused by NFS clients with personal identity problems

calls crdup/crfree in the fast path, that should be optimised.


Related issues

Related to illumos gate - Bug #6770: nfsauth_retrieve() flood caused by NFS clients with personal identity problemsClosedMarcel Telka2016-03-20

Actions
Actions

Also available in: Atom PDF