From owner-freebsd-fs@FreeBSD.ORG Tue Jan 6 08:25:55 2015 Return-Path: Delivered-To: freebsd-fs@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id E773BA03 for ; Tue, 6 Jan 2015 08:25:55 +0000 (UTC) Received: from smtp.unix-experience.fr (195-154-176-227.rev.poneytelecom.eu [195.154.176.227]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4EBBB648BE for ; Tue, 6 Jan 2015 08:25:54 +0000 (UTC) Received: from smtp.unix-experience.fr (unknown [192.168.200.21]) by smtp.unix-experience.fr (Postfix) with ESMTP id 2F48528018; Tue, 6 Jan 2015 08:25:50 +0000 (UTC) X-Virus-Scanned: scanned by unix-experience.fr Received: from smtp.unix-experience.fr ([192.168.200.21]) by smtp.unix-experience.fr (smtp.unix-experience.fr [192.168.200.21]) (amavisd-new, port 10024) with ESMTP id 6PunGYsl0D2j; Tue, 6 Jan 2015 08:25:41 +0000 (UTC) Received: from mail.unix-experience.fr (repo.unix-experience.fr [192.168.200.30]) by smtp.unix-experience.fr (Postfix) with ESMTPSA id 3292328008; Tue, 6 Jan 2015 08:25:41 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=unix-experience.fr; s=uxselect; t=1420532741; bh=mrQBmiD7srh5DyrVU4xbqpvm0aTnnlTxZsl36XNt+wc=; h=Date:From:Subject:To:Cc:In-Reply-To:References; b=FsnZdE/+LxE6yxWZuLJtqfhifWI/fJaUxSZ01TrDEuC35eN+9nZCHI9b3az4FzNhR BxlkNiGP0+Ke+MKkLUA3DODg9gvL0ryDXPo4wTZ9cpmiZ1YlkQIeHH4qbfN1b0/+r/ XQMmefopQ/1qjo4ZirYjLXj7SbpvADjOvP5xlvG4= Mime-Version: 1.0 Date: Tue, 06 Jan 2015 08:25:40 +0000 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-ID: X-Mailer: RainLoop/1.7.1.215 From: "=?utf-8?B?TG/Dr2MgQmxvdA==?=" Subject: Re: High Kernel Load with nfsv4 To: "Rick Macklem" In-Reply-To: <2093433467.6650515.1420514242874.JavaMail.root@uoguelph.ca> References: <2093433467.6650515.1420514242874.JavaMail.root@uoguelph.ca> Cc: freebsd-fs@freebsd.org X-BeenThere: freebsd-fs@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: Filesystems List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 06 Jan 2015 08:25:56 -0000 Hi Rick,=0A=0Ai saw that some people has issues with igb cards with NFS= =0AFor example: http://freebsd.1045724.n5.nabble.com/NFS-over-LAGG-lacp-p= oor-performance-td5906349.html =0A=0Acan my problem be related ? I use ig= b with default queue number. Here are my vmstat -i outputs=0A=0AServer si= de:=0A=0Ainterrupt total rate=0Airq1: atkb= d0 18 0=0Airq20: ehci1 = 2790134 2=0Airq21: ehci0 2547642 = 2=0Acpu0:timer 36299188 35=0Airq264: ciss0= 6352476 6=0Airq265: igb0:que 0 = 2716692 2=0Airq266: igb0:que 1 32205278 31= =0Airq267: igb0:que 2 38395109 37=0Airq268: igb0:que= 3 1413468 1=0Airq269: igb0:que 4 392= 07930 38=0Airq270: igb0:que 5 1622715 1=0A= irq271: igb0:que 6 1634676 1=0Airq272: igb0:que 7 = 1190123 1=0Airq273: igb0:link = 2 0=0Acpu1:timer 14074423 13=0Acpu= 8:timer 12204739 11=0Acpu9:timer = 11384192 11=0Acpu3:timer 10461566 = 10=0Acpu4:timer 12785103 12=0Acpu6:t= imer 10739344 10=0Acpu5:timer = 10978294 10=0Acpu7:timer 10599705 = 10=0Acpu2:timer 13998891 13=0Acpu10:tim= er 11602361 11=0Acpu11:timer = 11568523 11=0ATotal 296772592 = 290=0A=0AAnd client side:=0Ainterrupt total = rate=0Airq9: acpi0 4 0=0Airq22: eh= ci1 950519 2=0Airq23: ehci0 = 1865060 4=0Acpu0:timer 248128035 = 546=0Airq268: mfi0 406896 0=0Airq269: igb0= :que 0 2510556 5=0Airq270: igb0:que 1 = 2825336 6=0Airq271: igb0:que 2 2092958 = 4=0Airq272: igb0:que 3 1960849 4=0Airq273: igb0:qu= e 4 2645369 5=0Airq274: igb0:que 5 2= 735187 6=0Airq275: igb0:que 6 2290531 5= =0Airq276: igb0:que 7 2384370 5=0Airq277: igb0:lin= k 2 0=0Airq287: igb2:que 0 14= 65051 3=0Airq288: igb2:que 1 856381 1=0A= irq289: igb2:que 2 809318 1=0Airq290: igb2:que 3 = 897154 1=0Airq291: igb2:que 4 8757= 55 1=0Airq292: igb2:que 5 35866117 78=0Airq= 293: igb2:que 6 846517 1=0Airq294: igb2:que 7 = 857979 1=0Airq295: igb2:link 2 = 0=0Airq296: igb3:que 0 535212 1=0Airq297= : igb3:que 1 454359 1=0Airq298: igb3:que 2 = 454142 1=0Airq299: igb3:que 3 454623 = 1=0Airq300: igb3:que 4 456297 1=0Airq301: i= gb3:que 5 455482 1=0Airq302: igb3:que 6 = 456128 1=0Airq303: igb3:que 7 454680 = 1=0Airq304: igb3:link 3 0=0Airq305: ahci= 0 75 0=0Acpu1:timer = 257233702 566=0Acpu13:timer 255603184 56= 2=0Acpu7:timer 258492826 569=0Acpu12:timer = 255819351 563=0Acpu6:timer 258= 493465 569=0Acpu15:timer 254694003 560= =0Acpu3:timer 258171320 568=0Acpu22:timer = 256506877 564=0Acpu5:timer 2534= 01435 558=0Acpu16:timer 255412360 562=0A= cpu11:timer 257318013 566=0Acpu20:timer = 253648060 558=0Acpu2:timer 2578645= 43 567=0Acpu17:timer 261828899 576=0Acpu= 9:timer 257497326 567=0Acpu18:timer = 258451190 569=0Acpu8:timer 257784504 = 567=0Acpu14:timer 254923723 561=0Acpu10:= timer 257265498 566=0Acpu19:timer = 258775946 569=0Acpu4:timer 256368658 = 564=0Acpu23:timer 255050534 561=0Acpu21:tim= er 257663842 567=0ATotal = 6225260206 13710=0A=0APlease note igb2 on client side is the dedic= ated link for NFSv4=0A=0ARegards,=0A=0ALo=C3=AFc Blot,=0AUNIX Systems, Ne= twork and Security Engineer=0Ahttp://www.unix-experience.fr=0A=0A6 janvie= r 2015 04:17 "Rick Macklem" a =C3=A9crit: =0A> Loi= c Blot wrote:=0A> =0A>> Hi Rick,=0A>> nfsstat -e -s don't show usefull da= tas on server.=0A> =0A> Well, as far as I know, it returns valid informat= ion.=0A> (See below.)=0A> =0A>> Server Info:=0A>> Getattr Setattr Lookup = Readlink Read Write Create=0A>> Remove=0A>> 26935254 16911 5755728 302 23= 34920 3673866 0=0A>> 328332=0A>> Rename Link Symlink Mkdir Rmdir Readdir = RdirPlus=0A>> Access=0A>> 77980 28 0 0 3 8900 3=0A>> 1806052=0A>> Mknod F= sstat Fsinfo PathConf Commit LookupP SetClId=0A>> SetClIdCf=0A>> 1 1095 0= 0 614377 8172 8=0A>> 8=0A>> Open OpenAttr OpenDwnGr OpenCfrm DelePurge D= eleRet GetFH=0A>> Lock=0A>> 1595299 0 44145 1495 0 0 5197490=0A>> 635015= =0A>> LockT LockU Close Verify NVerify PutFH PutPubFH=0A>> PutRootFH=0A>>= 0 614919 1270938 0 0 22688676 0=0A>> 5=0A>> Renew RestoreFH SaveFH Secin= fo RelLckOwn V4Create=0A>> 42104 197606 275820 0 143 4578=0A>> Server:=0A= >> Retfailed Faults Clients=0A>> 0 0 6=0A>> OpenOwner Opens LockOwner Loc= ks Delegs=0A>> 32335 145448 204 181 0=0A> =0A> Well, 145448 Opens are a l= ot of Open files. Each of these uses=0A> a kernel malloc'd data structure= that is linked into multiple=0A> linked lists.=0A> =0A> The question is.= .why aren't these Opens being closed?=0A> Since FreeBSD does I/O on an mm= ap'd file after closing it,=0A> the FreeBSD NFSv4 client is forced to del= ay doing Close RPCs=0A> until the vnode is VOP_INACTIVE()/VOP_RECLAIM()'d= . (The=0A> VOP_RECLAIM() case is needed, since VOP_INACTIVE() isn't=0A> g= uaranteed to be called.)=0A> =0A> Since there were about 1.5 million Open= s and 1.27 million=0A> Closes, it does appear that Opens are being Closed= .=0A> Now, I'm not sure I would have imagined 1.5million file Opens=0A> i= n a few days. My guess is this is the bottleneck.=0A> =0A> I'd suggest th= at you do:=0A> # nfsstat -e -c=0A> on each of the NFSv4 clients and see h= ow many Opens/client=0A> there are. I vaguely remember an upper limit in = the client,=0A> but can't remember what it is set to.=0A> --> I suspect t= he client Open/Lock limit needs to be increased.=0A> (I can't remember if= the server also has a limit, but I=0A> think it does.)=0A> Then the size= of the hash tables used to search the Opens=0A> may also need to be incr= eased a lot.=0A> =0A> Also, I'd suggest you take a look at whatever apps.= are=0A> running on the client(s) and try to figure out why they=0A> are = Opening so many files?=0A> =0A> My guess is that the client(s) are gettig= bogged down by all=0A> these Opens.=0A> =0A>> Server Cache Stats:=0A>> I= nprog Idem Non-idem Misses CacheSize TCPPeak=0A>> 0 0 1 15082947 60 16522= =0A>> =0A>> Only GetAttr and Lookup increase and it's only every 4-5 seco= nds and=0A>> only +2 to +5 into theses values.=0A>> =0A>> Now on client, = if i take four processes stack i got=0A>> =0A>> PID TID COMM TDNAME KSTAC= K=0A>> 63170 102547 mv - mi_switch+0xe1=0A>> turnstile_wait+0x42a __mtx_l= ock_sleep+0x253 nfscl_nodeleg+0x65=0A>> nfs_lookup+0x3d0 VOP_LOOKUP_APV+0= xa1 lookup+0x59c namei+0x4d4=0A>> vn_open_cred+0x21d kern_openat+0x26f am= d64_syscall+0x351=0A>> Xfast_syscall+0xfb=0A>> =0A>> Another mv:=0A>> 631= 40 101738 mv - mi_switch+0xe1=0A>> turnstile_wait+0x42a __mtx_lock_sleep+= 0x253 nfscl_nodeleg+0x65=0A>> nfs_lookup+0x3d0 VOP_LOOKUP_APV+0xa1 lookup= +0x59c namei+0x4d4=0A>> kern_statat_vnhook+0xae sys_lstat+0x30 amd64_sysc= all+0x351=0A>> Xfast_syscall+0xfb=0A>> =0A>> 62070 102170 sendmail - mi_s= witch+0xe1=0A>> sleepq_timedwait+0x3a _sleep+0x26e clnt_vc_call+0x666=0A>= > clnt_reconnect_call+0x4fa newnfs_request+0xa8c nfscl_request+0x72=0A>> = nfsrpc_lookup+0x1fb nfs_lookup+0x508 VOP_LOOKUP_APV+0xa1=0A>> lookup+0x59= c namei+0x4d4 kern_statat_vnhook+0xae sys_lstat+0x30=0A>> amd64_syscall+0= x351 Xfast_syscall+0xfb=0A>> =0A>> 63200 100930 mv - mi_switch+0xe1=0A>> = turnstile_wait+0x42a __mtx_lock_sleep+0x253 nfscl_nodeleg+0x65=0A>> nfs_l= ookup+0x3d0 VOP_LOOKUP_APV+0xa1 lookup+0x59c namei+0x4d4=0A>> kern_statat= _vnhook+0xae sys_lstat+0x30 amd64_syscall+0x351=0A>> Xfast_syscall+0xfb= =0A> =0A> The above simply says that thread 102710 is waiting for a Looku= p=0A> reply from the server and the other 3 are waiting for the mutex=0A>= that protects the state structures in the client. (I suspect=0A> some ot= her thread in the client is wading through the Open list,=0A> if a single= client has a lot of these 145K Opens.)=0A> =0A>> When client is in this = state, server was doing nothing special=0A>> (procstat -kk)=0A>> =0A>> PI= D TID COMM TDNAME KSTACK=0A>> 895 100538 nfsd nfsd: master mi_switch+0xe1= =0A>> sleepq_catch_signals+0xab sleepq_timedwait_sig+0x10=0A>> _cv_timedw= ait_sig_sbt+0x18b svc_run_internal+0x4a1 svc_run+0x1de=0A>> nfsrvd_nfsd+0= x1ca nfssvc_nfsd+0x107 sys_nfssvc+0x9c=0A>> amd64_syscall+0x351 Xfast_sys= call+0xfb=0A>> 895 100568 nfsd nfsd: service mi_switch+0xe1=0A>> sleepq_c= atch_signals+0xab sleepq_wait_sig+0xf _cv_wait_sig+0x16a=0A>> svc_run_int= ernal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>> fork_trampoline+0xe= =0A>> 895 100569 nfsd nfsd: service mi_switch+0xe1=0A>> sleepq_catch_sign= als+0xab sleepq_wait_sig+0xf _cv_wait_sig+0x16a=0A>> svc_run_internal+0x8= 7e svc_thread_start+0xb fork_exit+0x9a=0A>> fork_trampoline+0xe=0A>> 895 = 100570 nfsd nfsd: service mi_switch+0xe1=0A>> sleepq_catch_signals+0xab s= leepq_wait_sig+0xf _cv_wait_sig+0x16a=0A>> svc_run_internal+0x87e svc_thr= ead_start+0xb fork_exit+0x9a=0A>> fork_trampoline+0xe=0A>> 895 100571 nfs= d nfsd: service mi_switch+0xe1=0A>> sleepq_catch_signals+0xab sleepq_wait= _sig+0xf _cv_wait_sig+0x16a=0A>> svc_run_internal+0x87e svc_thread_start+= 0xb fork_exit+0x9a=0A>> fork_trampoline+0xe=0A>> 895 100572 nfsd nfsd: se= rvice mi_switch+0xe1=0A>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf _= cv_wait_sig+0x16a=0A>> svc_run_internal+0x87e svc_thread_start+0xb fork_e= xit+0x9a=0A>> fork_trampoline+0xe=0A>> 895 100573 nfsd nfsd: service mi_s= witch+0xe1=0A>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf _cv_wait_si= g+0x16a=0A>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a= =0A>> fork_trampoline+0xe=0A>> 895 100575 nfsd nfsd: service mi_switch+0x= e1=0A>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf _cv_wait_sig+0x16a= =0A>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>> for= k_trampoline+0xe=0A>> 895 100576 nfsd nfsd: service mi_switch+0xe1=0A>> s= leepq_catch_signals+0xab sleepq_wait_sig+0xf _cv_wait_sig+0x16a=0A>> svc_= run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>> fork_trampoli= ne+0xe=0A>> 895 100577 nfsd nfsd: service mi_switch+0xe1=0A>> sleepq_catc= h_signals+0xab sleepq_wait_sig+0xf _cv_wait_sig+0x16a=0A>> svc_run_intern= al+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>> fork_trampoline+0xe=0A>= > 895 100578 nfsd nfsd: service mi_switch+0xe1=0A>> sleepq_catch_signals+= 0xab sleepq_wait_sig+0xf _cv_wait_sig+0x16a=0A>> svc_run_internal+0x87e s= vc_thread_start+0xb fork_exit+0x9a=0A>> fork_trampoline+0xe=0A>> 895 1005= 79 nfsd nfsd: service mi_switch+0xe1=0A>> sleepq_catch_signals+0xab sleep= q_wait_sig+0xf _cv_wait_sig+0x16a=0A>> svc_run_internal+0x87e svc_thread_= start+0xb fork_exit+0x9a=0A>> fork_trampoline+0xe=0A>> 895 100580 nfsd nf= sd: service mi_switch+0xe1=0A>> sleepq_catch_signals+0xab sleepq_wait_sig= +0xf _cv_wait_sig+0x16a=0A>> svc_run_internal+0x87e svc_thread_start+0xb = fork_exit+0x9a=0A>> fork_trampoline+0xe=0A>> 895 100581 nfsd nfsd: servic= e mi_switch+0xe1=0A>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf _cv_w= ait_sig+0x16a=0A>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+= 0x9a=0A>> fork_trampoline+0xe=0A>> 895 100582 nfsd nfsd: service mi_switc= h+0xe1=0A>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf _cv_wait_sig+0x= 16a=0A>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>> = fork_trampoline+0xe=0A>> 895 100583 nfsd nfsd: service mi_switch+0xe1=0A>= > sleepq_catch_signals+0xab sleepq_wait_sig+0xf _cv_wait_sig+0x16a=0A>> s= vc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>> fork_tramp= oline+0xe=0A>> 895 100584 nfsd nfsd: service mi_switch+0xe1=0A>> sleepq_c= atch_signals+0xab sleepq_wait_sig+0xf _cv_wait_sig+0x16a=0A>> svc_run_int= ernal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>> fork_trampoline+0xe= =0A>> 895 100585 nfsd nfsd: service mi_switch+0xe1=0A>> sleepq_catch_sign= als+0xab sleepq_wait_sig+0xf _cv_wait_sig+0x16a=0A>> svc_run_internal+0x8= 7e svc_thread_start+0xb fork_exit+0x9a=0A>> fork_trampoline+0xe=0A>> 895 = 100586 nfsd nfsd: service mi_switch+0xe1=0A>> sleepq_catch_signals+0xab s= leepq_wait_sig+0xf _cv_wait_sig+0x16a=0A>> svc_run_internal+0x87e svc_thr= ead_start+0xb fork_exit+0x9a=0A>> fork_trampoline+0xe=0A>> 895 100587 nfs= d nfsd: service mi_switch+0xe1=0A>> sleepq_catch_signals+0xab sleepq_wait= _sig+0xf _cv_wait_sig+0x16a=0A>> svc_run_internal+0x87e svc_thread_start+= 0xb fork_exit+0x9a=0A>> fork_trampoline+0xe=0A>> 895 100588 nfsd nfsd: se= rvice mi_switch+0xe1=0A>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf _= cv_wait_sig+0x16a=0A>> svc_run_internal+0x87e svc_thread_start+0xb fork_e= xit+0x9a=0A>> fork_trampoline+0xe=0A>> 895 100589 nfsd nfsd: service mi_s= witch+0xe1=0A>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf _cv_wait_si= g+0x16a=0A>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a= =0A>> fork_trampoline+0xe=0A>> 895 100590 nfsd nfsd: service mi_switch+0x= e1=0A>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf _cv_wait_sig+0x16a= =0A>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>> for= k_trampoline+0xe=0A>> 895 100592 nfsd nfsd: service mi_switch+0xe1=0A>> s= leepq_catch_signals+0xab sleepq_wait_sig+0xf _cv_wait_sig+0x16a=0A>> svc_= run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>> fork_trampoli= ne+0xe=0A>> 895 100593 nfsd nfsd: service mi_switch+0xe1=0A>> sleepq_catc= h_signals+0xab sleepq_wait_sig+0xf _cv_wait_sig+0x16a=0A>> svc_run_intern= al+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>> fork_trampoline+0xe=0A>= > 895 100594 nfsd nfsd: service mi_switch+0xe1=0A>> sleepq_catch_signals+= 0xab sleepq_wait_sig+0xf _cv_wait_sig+0x16a=0A>> svc_run_internal+0x87e s= vc_thread_start+0xb fork_exit+0x9a=0A>> fork_trampoline+0xe=0A>> 895 1005= 95 nfsd nfsd: service mi_switch+0xe1=0A>> sleepq_catch_signals+0xab sleep= q_wait_sig+0xf _cv_wait_sig+0x16a=0A>> svc_run_internal+0x87e svc_thread_= start+0xb fork_exit+0x9a=0A>> fork_trampoline+0xe=0A>> 895 100596 nfsd nf= sd: service mi_switch+0xe1=0A>> sleepq_catch_signals+0xab sleepq_wait_sig= +0xf _cv_wait_sig+0x16a=0A>> svc_run_internal+0x87e svc_thread_start+0xb = fork_exit+0x9a=0A>> fork_trampoline+0xe=0A>> 895 100597 nfsd nfsd: servic= e mi_switch+0xe1=0A>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf _cv_w= ait_sig+0x16a=0A>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+= 0x9a=0A>> fork_trampoline+0xe=0A>> 895 100598 nfsd nfsd: service mi_switc= h+0xe1=0A>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf _cv_wait_sig+0x= 16a=0A>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>> = fork_trampoline+0xe=0A>> 895 100599 nfsd nfsd: service mi_switch+0xe1=0A>= > sleepq_catch_signals+0xab sleepq_wait_sig+0xf _cv_wait_sig+0x16a=0A>> s= vc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>> fork_tramp= oline+0xe=0A>> 895 100600 nfsd nfsd: service mi_switch+0xe1=0A>> sleepq_c= atch_signals+0xab sleepq_wait_sig+0xf _cv_wait_sig+0x16a=0A>> svc_run_int= ernal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>> fork_trampoline+0xe= =0A>> 895 100602 nfsd nfsd: service mi_switch+0xe1=0A>> sleepq_catch_sign= als+0xab sleepq_wait_sig+0xf _cv_wait_sig+0x16a=0A>> svc_run_internal+0x8= 7e svc_thread_start+0xb fork_exit+0x9a=0A>> fork_trampoline+0xe=0A>> 895 = 100603 nfsd nfsd: service mi_switch+0xe1=0A>> sleepq_catch_signals+0xab s= leepq_wait_sig+0xf _cv_wait_sig+0x16a=0A>> svc_run_internal+0x87e svc_thr= ead_start+0xb fork_exit+0x9a=0A>> fork_trampoline+0xe=0A>> 895 100604 nfs= d nfsd: service mi_switch+0xe1=0A>> sleepq_catch_signals+0xab sleepq_wait= _sig+0xf _cv_wait_sig+0x16a=0A>> svc_run_internal+0x87e svc_thread_start+= 0xb fork_exit+0x9a=0A>> fork_trampoline+0xe=0A>> 895 100605 nfsd nfsd: se= rvice mi_switch+0xe1=0A>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf _= cv_wait_sig+0x16a=0A>> svc_run_internal+0x87e svc_thread_start+0xb fork_e= xit+0x9a=0A>> fork_trampoline+0xe=0A>> 895 100606 nfsd nfsd: service mi_s= witch+0xe1=0A>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf _cv_wait_si= g+0x16a=0A>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a= =0A>> fork_trampoline+0xe=0A>> 895 100607 nfsd nfsd: service mi_switch+0x= e1=0A>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf _cv_wait_sig+0x16a= =0A>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>> for= k_trampoline+0xe=0A>> 895 100608 nfsd nfsd: service mi_switch+0xe1=0A>> s= leepq_catch_signals+0xab sleepq_wait_sig+0xf _cv_wait_sig+0x16a=0A>> svc_= run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>> fork_trampoli= ne+0xe=0A>> 895 100609 nfsd nfsd: service mi_switch+0xe1=0A>> sleepq_catc= h_signals+0xab sleepq_wait_sig+0xf _cv_wait_sig+0x16a=0A>> svc_run_intern= al+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>> fork_trampoline+0xe=0A>= > 895 100610 nfsd nfsd: service mi_switch+0xe1=0A>> sleepq_catch_signals+= 0xab sleepq_wait_sig+0xf _cv_wait_sig+0x16a=0A>> svc_run_internal+0x87e s= vc_thread_start+0xb fork_exit+0x9a=0A>> fork_trampoline+0xe=0A>> 895 1006= 11 nfsd nfsd: service mi_switch+0xe1=0A>> sleepq_catch_signals+0xab sleep= q_wait_sig+0xf _cv_wait_sig+0x16a=0A>> svc_run_internal+0x87e svc_thread_= start+0xb fork_exit+0x9a=0A>> fork_trampoline+0xe=0A>> 895 100612 nfsd nf= sd: service mi_switch+0xe1=0A>> sleepq_catch_signals+0xab sleepq_wait_sig= +0xf _cv_wait_sig+0x16a=0A>> svc_run_internal+0x87e svc_thread_start+0xb = fork_exit+0x9a=0A>> fork_trampoline+0xe=0A>> 895 100613 nfsd nfsd: servic= e mi_switch+0xe1=0A>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf _cv_w= ait_sig+0x16a=0A>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+= 0x9a=0A>> fork_trampoline+0xe=0A>> 895 100614 nfsd nfsd: service mi_switc= h+0xe1=0A>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf _cv_wait_sig+0x= 16a=0A>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>> = fork_trampoline+0xe=0A>> 895 100615 nfsd nfsd: service mi_switch+0xe1=0A>= > sleepq_catch_signals+0xab sleepq_wait_sig+0xf _cv_wait_sig+0x16a=0A>> s= vc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>> fork_tramp= oline+0xe=0A>> 895 100617 nfsd nfsd: service mi_switch+0xe1=0A>> sleepq_c= atch_signals+0xab sleepq_wait_sig+0xf _cv_wait_sig+0x16a=0A>> svc_run_int= ernal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>> fork_trampoline+0xe= =0A>> 895 100618 nfsd nfsd: service mi_switch+0xe1=0A>> sleepq_catch_sign= als+0xab sleepq_wait_sig+0xf _cv_wait_sig+0x16a=0A>> svc_run_internal+0x8= 7e svc_thread_start+0xb fork_exit+0x9a=0A>> fork_trampoline+0xe=0A>> 895 = 100619 nfsd nfsd: service mi_switch+0xe1=0A>> sleepq_catch_signals+0xab s= leepq_wait_sig+0xf _cv_wait_sig+0x16a=0A>> svc_run_internal+0x87e svc_thr= ead_start+0xb fork_exit+0x9a=0A>> fork_trampoline+0xe=0A>> 895 100621 nfs= d nfsd: service mi_switch+0xe1=0A>> sleepq_catch_signals+0xab sleepq_wait= _sig+0xf _cv_wait_sig+0x16a=0A>> svc_run_internal+0x87e svc_thread_start+= 0xb fork_exit+0x9a=0A>> fork_trampoline+0xe=0A>> 895 100622 nfsd nfsd: se= rvice mi_switch+0xe1=0A>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf _= cv_wait_sig+0x16a=0A>> svc_run_internal+0x87e svc_thread_start+0xb fork_e= xit+0x9a=0A>> fork_trampoline+0xe=0A>> 895 100623 nfsd nfsd: service mi_s= witch+0xe1=0A>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf _cv_wait_si= g+0x16a=0A>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a= =0A>> fork_trampoline+0xe=0A>> 895 100624 nfsd nfsd: service mi_switch+0x= e1=0A>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf _cv_wait_sig+0x16a= =0A>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>> for= k_trampoline+0xe=0A>> 895 100625 nfsd nfsd: service mi_switch+0xe1=0A>> s= leepq_catch_signals+0xab sleepq_wait_sig+0xf _cv_wait_sig+0x16a=0A>> svc_= run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>> fork_trampoli= ne+0xe=0A>> 895 100626 nfsd nfsd: service mi_switch+0xe1=0A>> sleepq_catc= h_signals+0xab sleepq_wait_sig+0xf _cv_wait_sig+0x16a=0A>> svc_run_intern= al+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>> fork_trampoline+0xe=0A>= > 895 100627 nfsd nfsd: service mi_switch+0xe1=0A>> sleepq_catch_signals+= 0xab sleepq_wait_sig+0xf _cv_wait_sig+0x16a=0A>> svc_run_internal+0x87e s= vc_thread_start+0xb fork_exit+0x9a=0A>> fork_trampoline+0xe=0A>> 895 1006= 28 nfsd nfsd: service mi_switch+0xe1=0A>> sleepq_catch_signals+0xab sleep= q_wait_sig+0xf _cv_wait_sig+0x16a=0A>> svc_run_internal+0x87e svc_thread_= start+0xb fork_exit+0x9a=0A>> fork_trampoline+0xe=0A>> 895 100629 nfsd nf= sd: service mi_switch+0xe1=0A>> sleepq_catch_signals+0xab sleepq_wait_sig= +0xf _cv_wait_sig+0x16a=0A>> svc_run_internal+0x87e svc_thread_start+0xb = fork_exit+0x9a=0A>> fork_trampoline+0xe=0A>> 895 100630 nfsd nfsd: servic= e mi_switch+0xe1=0A>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf _cv_w= ait_sig+0x16a=0A>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+= 0x9a=0A>> fork_trampoline+0xe=0A>> 895 100631 nfsd nfsd: service mi_switc= h+0xe1=0A>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf _cv_wait_sig+0x= 16a=0A>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>> = fork_trampoline+0xe=0A>> 895 100632 nfsd nfsd: service mi_switch+0xe1=0A>= > sleepq_catch_signals+0xab sleepq_wait_sig+0xf _cv_wait_sig+0x16a=0A>> s= vc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>> fork_tramp= oline+0xe=0A>> 895 100633 nfsd nfsd: service mi_switch+0xe1=0A>> sleepq_c= atch_signals+0xab sleepq_wait_sig+0xf _cv_wait_sig+0x16a=0A>> svc_run_int= ernal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>> fork_trampoline+0xe= =0A>> 895 100634 nfsd nfsd: service mi_switch+0xe1=0A>> sleepq_catch_sign= als+0xab sleepq_wait_sig+0xf _cv_wait_sig+0x16a=0A>> svc_run_internal+0x8= 7e svc_thread_start+0xb fork_exit+0x9a=0A>> fork_trampoline+0xe=0A>> 895 = 100635 nfsd nfsd: service mi_switch+0xe1=0A>> sleepq_catch_signals+0xab s= leepq_wait_sig+0xf _cv_wait_sig+0x16a=0A>> svc_run_internal+0x87e svc_thr= ead_start+0xb fork_exit+0x9a=0A>> fork_trampoline+0xe=0A>> 895 100636 nfs= d nfsd: service mi_switch+0xe1=0A>> sleepq_catch_signals+0xab sleepq_wait= _sig+0xf _cv_wait_sig+0x16a=0A>> svc_run_internal+0x87e svc_thread_start+= 0xb fork_exit+0x9a=0A>> fork_trampoline+0xe=0A>> 895 100638 nfsd nfsd: se= rvice mi_switch+0xe1=0A>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf _= cv_wait_sig+0x16a=0A>> svc_run_internal+0x87e svc_thread_start+0xb fork_e= xit+0x9a=0A>> fork_trampoline+0xe=0A>> 895 100639 nfsd nfsd: service mi_s= witch+0xe1=0A>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf _cv_wait_si= g+0x16a=0A>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a= =0A>> fork_trampoline+0xe=0A>> 895 100640 nfsd nfsd: service mi_switch+0x= e1=0A>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf _cv_wait_sig+0x16a= =0A>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>> for= k_trampoline+0xe=0A>> 895 100641 nfsd nfsd: service mi_switch+0xe1=0A>> s= leepq_catch_signals+0xab sleepq_wait_sig+0xf _cv_wait_sig+0x16a=0A>> svc_= run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>> fork_trampoli= ne+0xe=0A>> 895 100642 nfsd nfsd: service mi_switch+0xe1=0A>> sleepq_catc= h_signals+0xab sleepq_wait_sig+0xf _cv_wait_sig+0x16a=0A>> svc_run_intern= al+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>> fork_trampoline+0xe=0A>= > 895 100643 nfsd nfsd: service mi_switch+0xe1=0A>> sleepq_catch_signals+= 0xab sleepq_wait_sig+0xf _cv_wait_sig+0x16a=0A>> svc_run_internal+0x87e s= vc_thread_start+0xb fork_exit+0x9a=0A>> fork_trampoline+0xe=0A>> 895 1006= 44 nfsd nfsd: service mi_switch+0xe1=0A>> sleepq_catch_signals+0xab sleep= q_wait_sig+0xf _cv_wait_sig+0x16a=0A>> svc_run_internal+0x87e svc_thread_= start+0xb fork_exit+0x9a=0A>> fork_trampoline+0xe=0A>> 895 100645 nfsd nf= sd: service mi_switch+0xe1=0A>> sleepq_catch_signals+0xab sleepq_wait_sig= +0xf _cv_wait_sig+0x16a=0A>> svc_run_internal+0x87e svc_thread_start+0xb = fork_exit+0x9a=0A>> fork_trampoline+0xe=0A>> 895 100646 nfsd nfsd: servic= e mi_switch+0xe1=0A>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf _cv_w= ait_sig+0x16a=0A>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+= 0x9a=0A>> fork_trampoline+0xe=0A>> 895 100647 nfsd nfsd: service mi_switc= h+0xe1=0A>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf _cv_wait_sig+0x= 16a=0A>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>> = fork_trampoline+0xe=0A>> 895 100648 nfsd nfsd: service mi_switch+0xe1=0A>= > sleepq_catch_signals+0xab sleepq_wait_sig+0xf _cv_wait_sig+0x16a=0A>> s= vc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>> fork_tramp= oline+0xe=0A>> 895 100649 nfsd nfsd: service mi_switch+0xe1=0A>> sleepq_c= atch_signals+0xab sleepq_wait_sig+0xf _cv_wait_sig+0x16a=0A>> svc_run_int= ernal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>> fork_trampoline+0xe= =0A>> 895 100651 nfsd nfsd: service mi_switch+0xe1=0A>> sleepq_catch_sign= als+0xab sleepq_wait_sig+0xf _cv_wait_sig+0x16a=0A>> svc_run_internal+0x8= 7e svc_thread_start+0xb fork_exit+0x9a=0A>> fork_trampoline+0xe=0A>> 895 = 100652 nfsd nfsd: service mi_switch+0xe1=0A>> sleepq_catch_signals+0xab s= leepq_wait_sig+0xf _cv_wait_sig+0x16a=0A>> svc_run_internal+0x87e svc_thr= ead_start+0xb fork_exit+0x9a=0A>> fork_trampoline+0xe=0A>> 895 100653 nfs= d nfsd: service mi_switch+0xe1=0A>> sleepq_catch_signals+0xab sleepq_wait= _sig+0xf _cv_wait_sig+0x16a=0A>> svc_run_internal+0x87e svc_thread_start+= 0xb fork_exit+0x9a=0A>> fork_trampoline+0xe=0A>> 895 100654 nfsd nfsd: se= rvice mi_switch+0xe1=0A>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf _= cv_wait_sig+0x16a=0A>> svc_run_internal+0x87e svc_thread_start+0xb fork_e= xit+0x9a=0A>> fork_trampoline+0xe=0A>> 895 100655 nfsd nfsd: service mi_s= witch+0xe1=0A>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf _cv_wait_si= g+0x16a=0A>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a= =0A>> fork_trampoline+0xe=0A>> 895 100656 nfsd nfsd: service mi_switch+0x= e1=0A>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf _cv_wait_sig+0x16a= =0A>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>> for= k_trampoline+0xe=0A>> 895 100657 nfsd nfsd: service mi_switch+0xe1=0A>> s= leepq_catch_signals+0xab sleepq_wait_sig+0xf _cv_wait_sig+0x16a=0A>> svc_= run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>> fork_trampoli= ne+0xe=0A>> 895 100658 nfsd nfsd: service mi_switch+0xe1=0A>> sleepq_catc= h_signals+0xab sleepq_wait_sig+0xf _cv_wait_sig+0x16a=0A>> svc_run_intern= al+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>> fork_trampoline+0xe=0A>= > 895 100659 nfsd nfsd: service mi_switch+0xe1=0A>> sleepq_catch_signals+= 0xab sleepq_wait_sig+0xf _cv_wait_sig+0x16a=0A>> svc_run_internal+0x87e s= vc_thread_start+0xb fork_exit+0x9a=0A>> fork_trampoline+0xe=0A>> 895 1006= 61 nfsd nfsd: service mi_switch+0xe1=0A>> sleepq_catch_signals+0xab sleep= q_wait_sig+0xf _cv_wait_sig+0x16a=0A>> svc_run_internal+0x87e svc_thread_= start+0xb fork_exit+0x9a=0A>> fork_trampoline+0xe=0A>> 895 100662 nfsd nf= sd: service mi_switch+0xe1=0A>> sleepq_catch_signals+0xab sleepq_wait_sig= +0xf _cv_wait_sig+0x16a=0A>> svc_run_internal+0x87e svc_thread_start+0xb = fork_exit+0x9a=0A>> fork_trampoline+0xe=0A>> 895 100684 nfsd nfsd: servic= e mi_switch+0xe1=0A>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf _cv_w= ait_sig+0x16a=0A>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+= 0x9a=0A>> fork_trampoline+0xe=0A>> 895 100685 nfsd nfsd: service mi_switc= h+0xe1=0A>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf _cv_wait_sig+0x= 16a=0A>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>> = fork_trampoline+0xe=0A>> 895 100686 nfsd nfsd: service mi_switch+0xe1=0A>= > sleepq_catch_signals+0xab sleepq_wait_sig+0xf _cv_wait_sig+0x16a=0A>> s= vc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>> fork_tramp= oline+0xe=0A>> 895 100797 nfsd nfsd: service mi_switch+0xe1=0A>> sleepq_c= atch_signals+0xab sleepq_wait_sig+0xf _cv_wait_sig+0x16a=0A>> svc_run_int= ernal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>> fork_trampoline+0xe= =0A>> 895 100798 nfsd nfsd: service mi_switch+0xe1=0A>> sleepq_catch_sign= als+0xab sleepq_wait_sig+0xf _cv_wait_sig+0x16a=0A>> svc_run_internal+0x8= 7e svc_thread_start+0xb fork_exit+0x9a=0A>> fork_trampoline+0xe=0A>> 895 = 100799 nfsd nfsd: service mi_switch+0xe1=0A>> sleepq_catch_signals+0xab s= leepq_wait_sig+0xf _cv_wait_sig+0x16a=0A>> svc_run_internal+0x87e svc_thr= ead_start+0xb fork_exit+0x9a=0A>> fork_trampoline+0xe=0A>> 895 100800 nfs= d nfsd: service mi_switch+0xe1=0A>> sleepq_catch_signals+0xab sleepq_wait= _sig+0xf _cv_wait_sig+0x16a=0A>> svc_run_internal+0x87e svc_thread_start+= 0xb fork_exit+0x9a=0A>> fork_trampoline+0xe=0A>> 895 100801 nfsd nfsd: se= rvice mi_switch+0xe1=0A>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf _= cv_wait_sig+0x16a=0A>> svc_run_internal+0x87e svc_thread_start+0xb fork_e= xit+0x9a=0A>> fork_trampoline+0xe=0A>> =0A>> I really think it's a client= side problem, maybe a lookup problem.=0A>> =0A>> Regards,=0A>> =0A>> Lo= =C3=AFc Blot,=0A>> UNIX Systems, Network and Security Engineer=0A>> http:= //www.unix-experience.fr=0A>> =0A>> 5 janvier 2015 14:35 "Rick Macklem" <= rmacklem@uoguelph.ca> a =C3=A9crit:=0A>>> Loic Blot wrote:=0A>>> =0A>>>> = Hi,=0A>>>> happy new year Rick and @freebsd-fs.=0A>>>> =0A>>>> After some= days, i looked my NFSv4.1 mount. At server start it was=0A>>>> calm, but= after 4 days, here is the top stat...=0A>>>> =0A>>>> CPU: 0.0% user, 0.0= % nice, 100% system, 0.0% interrupt, 0.0%=0A>>>> idle=0A>>>> =0A>>>> Defi= nitively i think it's a problem on client side. What can i=0A>>>> look=0A= >>>> into running kernel to resolve this issue ?=0A>>> =0A>>> Well, I'd s= tart with:=0A>>> # nfsstat -e -s=0A>>> - run repeatedly on the server (on= ce every N seconds in a loop).=0A>>> Then look at the output, comparing t= he counts and see which RPCs=0A>>> are being performed by the client(s). = You are looking for which=0A>>> RPCs are being done a lot. (If one RPC is= almost 100% of the load,=0A>>> then it might be a client/caching issue f= or whatever that RPC is=0A>>> doing.)=0A>>> =0A>>> Also look at the Open/= Lock counts near the end of the output.=0A>>> If the # of Opens/Locks is = large, it may be possible to reduce the=0A>>> CPU overheads by using larg= er hash tables.=0A>>> =0A>>> Then you need to profile the server kernel t= o see where the CPU=0A>>> is being used.=0A>>> Hopefully someone else can= fill you in on how to do that, because=0A>>> I'll admit I don't know how= to.=0A>>> Basically you are looking to see if the CPU is being used in= =0A>>> the NFS server code or ZFS.=0A>>> =0A>>> Good luck with it, rick= =0A>>> =0A>>>> Regards,=0A>>>> =0A>>>> Lo=C3=AFc Blot,=0A>>>> UNIX System= s, Network and Security Engineer=0A>>>> http://www.unix-experience.fr=0A>= >>> =0A>>>> 30 d=C3=A9cembre 2014 16:16 "Lo=C3=AFc Blot" =0A>>>> a=0A>>>> =C3=A9crit:=0A>>>>> Hi Rick,=0A>>>>> i upg= raded my jail host from FreeBSD 9.3 to 10.1 to use NFS v4.1=0A>>>>> (moun= toptions:=0A>>>>> rw,rsize=3D32768,wsize=3D32768,tcp,nfsv4,minorversion= =3D1)=0A>>>>> =0A>>>>> Performance is quite stable but it's slow. Not as = slow as before=0A>>>>> but slow... services was launched=0A>>>>> but no c= lient are using them and system CPU % was 10-50%.=0A>>>>> =0A>>>>> I don'= t see anything on NFSv4.1 server, it's perfectly stable and=0A>>>>> funct= ionnal.=0A>>>>> =0A>>>>> Regards,=0A>>>>> =0A>>>>> Lo=C3=AFc Blot,=0A>>>>= > UNIX Systems, Network and Security Engineer=0A>>>>> http://www.unix-exp= erience.fr=0A>>>>> =0A>>>>> 23 d=C3=A9cembre 2014 00:20 "Rick Macklem" a=0A>>>>> =C3=A9crit:=0A>>>>> =0A>>>>>> Loic Blot wr= ote:=0A>>>>>> =0A>>>>>>> Hi,=0A>>>>>>> =0A>>>>>>> To clarify because of o= ur exchanges. Here are the current=0A>>>>>>> sysctl=0A>>>>>>> options for= server:=0A>>>>>>> =0A>>>>>>> vfs.nfsd.enable_nobodycheck=3D0=0A>>>>>>> v= fs.nfsd.enable_nogroupcheck=3D0=0A>>>>>>> =0A>>>>>>> vfs.nfsd.maxthreads= =3D200=0A>>>>>>> vfs.nfsd.tcphighwater=3D10000=0A>>>>>>> vfs.nfsd.tcpcach= etimeo=3D300=0A>>>>>>> vfs.nfsd.server_min_nfsvers=3D4=0A>>>>>>> =0A>>>>>= >> kern.maxvnodes=3D10000000=0A>>>>>>> kern.ipc.maxsockbuf=3D4194304=0A>>= >>>>> net.inet.tcp.sendbuf_max=3D4194304=0A>>>>>>> net.inet.tcp.recvbuf_m= ax=3D4194304=0A>>>>>>> =0A>>>>>>> vfs.lookup_shared=3D0=0A>>>>>>> =0A>>>>= >>> Regards,=0A>>>>>>> =0A>>>>>>> Lo=C3=AFc Blot,=0A>>>>>>> UNIX Systems,= Network and Security Engineer=0A>>>>>>> http://www.unix-experience.fr=0A= >>>>>>> =0A>>>>>>> 22 d=C3=A9cembre 2014 09:42 "Lo=C3=AFc Blot"=0A>>>>>>>= =0A>>>>>>> a=0A>>>>>>> =C3=A9crit:=0A>>>>>= >> =0A>>>>>>> Hi Rick,=0A>>>>>>> my 5 jails runs this weekend and now i h= ave some stats on this=0A>>>>>>> monday.=0A>>>>>>> =0A>>>>>>> Hopefully d= eadlock was fixed, yeah, but everything isn't good=0A>>>>>>> :(=0A>>>>>>>= =0A>>>>>>> On NFSv4 server (FreeBSD 10.1) system uses 35% CPU=0A>>>>>>> = =0A>>>>>>> As i can see this is because of nfsd:=0A>>>>>>> =0A>>>>>>> 918= root 96 20 0 12352K 3372K rpcsvc 6 51.4H=0A>>>>>>> 273.68% nfsd: server = (nfsd)=0A>>>>>>> =0A>>>>>>> If i look at dmesg i see:=0A>>>>>>> nfsd serv= er cache flooded, try increasing vfs.nfsd.tcphighwater=0A>>>>>> =0A>>>>>>= Well, you have a couple of choices:=0A>>>>>> 1 - Use NFSv4.1 (add "minor= version=3D1" to your mount options).=0A>>>>>> (NFSv4.1 avoids use of the = DRC and instead uses something=0A>>>>>> called sessions. See below.)=0A>>= >>>> OR=0A>>>>>> =0A>>>>>>> vfs.nfsd.tcphighwater was set to 10000, i inc= rease it to 15000=0A>>>>>> =0A>>>>>> 2 - Bump vfs.nfsd.tcphighwater way u= p, until you no longer see=0A>>>>>> "nfs server cache flooded" messages. = (I think Garrett Wollman=0A>>>>>> uses=0A>>>>>> 100000. (You may still se= e quite a bit of CPU overheads.)=0A>>>>>> =0A>>>>>> OR=0A>>>>>> =0A>>>>>>= 3 - Set vfs.nfsd.cachetcp=3D0 (which disables the DRC and gets rid=0A>>>= >>> of the CPU overheads). However, there is a risk of data=0A>>>>>> corr= uption=0A>>>>>> if you have a client->server network partitioning of a mo= derate=0A>>>>>> duration, because a non-idempotent RPC may get redone, be= casue=0A>>>>>> the client times out waiting for a reply. If a non-idempot= ent=0A>>>>>> RPC gets done twice on the server, data corruption can happe= n.=0A>>>>>> (The DRC provides improved correctness, but does add overhead= .)=0A>>>>>> =0A>>>>>> If #1 works for you, it is the preferred solution, = since=0A>>>>>> Sessions=0A>>>>>> in NFSv4.1 solves the correctness proble= m in a good, space bound=0A>>>>>> way. A session basically has N (usually= 32 or 64) slots and only=0A>>>>>> allows one outstanding RPC/slot. As su= ch, it can cache the=0A>>>>>> previous=0A>>>>>> reply for each slot (32 o= r 64 of them) and guarantee "exactly=0A>>>>>> once"=0A>>>>>> RPC semantic= s.=0A>>>>>> =0A>>>>>> rick=0A>>>>>> =0A>>>>>>> Here is 'nfsstat -s' outpu= t:=0A>>>>>>> =0A>>>>>>> Server Info:=0A>>>>>>> Getattr Setattr Lookup Rea= dlink Read Write Create=0A>>>>>>> Remove=0A>>>>>>> 12600652 1812 2501097 = 156 1386423 1983729 123=0A>>>>>>> 162067=0A>>>>>>> Rename Link Symlink Mk= dir Rmdir Readdir RdirPlus=0A>>>>>>> Access=0A>>>>>>> 36762 9 0 0 0 3147 = 0=0A>>>>>>> 623524=0A>>>>>>> Mknod Fsstat Fsinfo PathConf Commit=0A>>>>>>= > 0 0 0 0 328117=0A>>>>>>> Server Ret-Failed=0A>>>>>>> 0=0A>>>>>>> Server= Faults=0A>>>>>>> 0=0A>>>>>>> Server Cache Stats:=0A>>>>>>> Inprog Idem N= on-idem Misses=0A>>>>>>> 0 0 0 12635512=0A>>>>>>> Server Write Gathering:= =0A>>>>>>> WriteOps WriteRPC Opsaved=0A>>>>>>> 1983729 1983729 0=0A>>>>>>= > =0A>>>>>>> And here is 'procstat -kk' for nfsd (server)=0A>>>>>>> =0A>>= >>>>> 918 100528 nfsd nfsd: master mi_switch+0xe1=0A>>>>>>> sleepq_catch_= signals+0xab sleepq_timedwait_sig+0x10=0A>>>>>>> _cv_timedwait_sig_sbt+0x= 18b svc_run_internal+0x4a1=0A>>>>>>> svc_run+0x1de=0A>>>>>>> nfsrvd_nfsd+= 0x1ca nfssvc_nfsd+0x107 sys_nfssvc+0x9c=0A>>>>>>> amd64_syscall+0x351 Xfa= st_syscall+0xfb=0A>>>>>>> 918 100568 nfsd nfsd: service mi_switch+0xe1=0A= >>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_= sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit= +0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 918 100569 nfsd nfsd: servi= ce mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf= =0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread= _start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 918 100= 570 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab= sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_inter= nal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0= xe=0A>>>>>>> 918 100571 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleep= q_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>= >>>>>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>= >> fork_trampoline+0xe=0A>>>>>>> 918 100572 nfsd nfsd: service mi_switch+= 0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _c= v_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0xb fo= rk_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 918 100573 nfsd nfsd= : service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_= sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc= _thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> = 918 100574 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signa= ls+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_ru= n_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_tramp= oline+0xe=0A>>>>>>> 918 100575 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>= > sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x= 16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a= =0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 918 100576 nfsd nfsd: service mi= _switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>= >>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_star= t+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 918 100577 n= fsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab slee= pq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0= x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A= >>>>>>> 918 100578 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_cat= ch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>= > svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fo= rk_trampoline+0xe=0A>>>>>>> 918 100579 nfsd nfsd: service mi_switch+0xe1= =0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wa= it_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0xb fork_e= xit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 918 100580 nfsd nfsd: se= rvice mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+= 0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thr= ead_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 918 = 100581 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0= xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_in= ternal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampolin= e+0xe=0A>>>>>>> 918 100582 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sl= eepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a= =0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>= >>>>>> fork_trampoline+0xe=0A>>>>>>> 918 100583 nfsd nfsd: service mi_swi= tch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>= > _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0x= b fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 918 100584 nfsd = nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_w= ait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e= svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>= >>> 918 100585 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_s= ignals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> sv= c_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_t= rampoline+0xe=0A>>>>>>> 918 100586 nfsd nfsd: service mi_switch+0xe1=0A>>= >>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_si= g+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0= x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 918 100587 nfsd nfsd: service= mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf= =0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread= _start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 918 100= 588 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab= sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_inter= nal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0= xe=0A>>>>>>> 918 100589 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleep= q_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>= >>>>>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>= >> fork_trampoline+0xe=0A>>>>>>> 918 100590 nfsd nfsd: service mi_switch+= 0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _c= v_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0xb fo= rk_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 918 100591 nfsd nfsd= : service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_= sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc= _thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> = 918 100592 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signa= ls+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_ru= n_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_tramp= oline+0xe=0A>>>>>>> 918 100593 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>= > sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x= 16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a= =0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 918 100594 nfsd nfsd: service mi= _switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>= >>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_star= t+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 918 100595 n= fsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab slee= pq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0= x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A= >>>>>>> 918 100596 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_cat= ch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>= > svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fo= rk_trampoline+0xe=0A>>>>>>> 918 100597 nfsd nfsd: service mi_switch+0xe1= =0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wa= it_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0xb fork_e= xit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 918 100598 nfsd nfsd: se= rvice mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+= 0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thr= ead_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 918 = 100599 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0= xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_in= ternal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampolin= e+0xe=0A>>>>>>> 918 100600 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sl= eepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a= =0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>= >>>>>> fork_trampoline+0xe=0A>>>>>>> 918 100601 nfsd nfsd: service mi_swi= tch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>= > _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0x= b fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 918 100602 nfsd = nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_w= ait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e= svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>= >>> 918 100603 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_s= ignals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> sv= c_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_t= rampoline+0xe=0A>>>>>>> 918 100604 nfsd nfsd: service mi_switch+0xe1=0A>>= >>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_si= g+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0= x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 918 100605 nfsd nfsd: service= mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf= =0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread= _start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 918 100= 606 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab= sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_inter= nal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0= xe=0A>>>>>>> 918 100607 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleep= q_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>= >>>>>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>= >> fork_trampoline+0xe=0A>>>>>>> 918 100608 nfsd nfsd: service mi_switch+= 0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _c= v_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0xb fo= rk_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 918 100609 nfsd nfsd= : service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_= sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc= _thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> = 918 100610 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signa= ls+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_ru= n_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_tramp= oline+0xe=0A>>>>>>> 918 100611 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>= > sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x= 16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a= =0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 918 100612 nfsd nfsd: service mi= _switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>= >>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_star= t+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 918 100613 n= fsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab slee= pq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0= x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A= >>>>>>> 918 100614 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_cat= ch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>= > svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fo= rk_trampoline+0xe=0A>>>>>>> 918 100615 nfsd nfsd: service mi_switch+0xe1= =0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wa= it_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0xb fork_e= xit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 918 100616 nfsd nfsd: se= rvice mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+= 0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thr= ead_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 918 = 100617 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0= xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_in= ternal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampolin= e+0xe=0A>>>>>>> 918 100618 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sl= eepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a= =0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>= >>>>>> fork_trampoline+0xe=0A>>>>>>> 918 100619 nfsd nfsd: service mi_swi= tch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>= > _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0x= b fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 918 100620 nfsd = nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_w= ait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e= svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>= >>> 918 100621 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_s= ignals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> sv= c_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_t= rampoline+0xe=0A>>>>>>> 918 100622 nfsd nfsd: service mi_switch+0xe1=0A>>= >>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_si= g+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0= x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 918 100623 nfsd nfsd: service= mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf= =0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread= _start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 918 100= 624 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab= sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_inter= nal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0= xe=0A>>>>>>> 918 100625 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleep= q_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>= >>>>>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>= >> fork_trampoline+0xe=0A>>>>>>> 918 100626 nfsd nfsd: service mi_switch+= 0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _c= v_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0xb fo= rk_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 918 100627 nfsd nfsd= : service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_= sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc= _thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> = 918 100628 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signa= ls+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_ru= n_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_tramp= oline+0xe=0A>>>>>>> 918 100629 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>= > sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x= 16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a= =0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 918 100630 nfsd nfsd: service mi= _switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>= >>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_star= t+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 918 100631 n= fsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab slee= pq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0= x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A= >>>>>>> 918 100632 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_cat= ch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>= > svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fo= rk_trampoline+0xe=0A>>>>>>> 918 100633 nfsd nfsd: service mi_switch+0xe1= =0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wa= it_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0xb fork_e= xit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 918 100634 nfsd nfsd: se= rvice mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+= 0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thr= ead_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 918 = 100635 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0= xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_in= ternal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampolin= e+0xe=0A>>>>>>> 918 100636 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sl= eepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a= =0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>= >>>>>> fork_trampoline+0xe=0A>>>>>>> 918 100637 nfsd nfsd: service mi_swi= tch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>= > _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0x= b fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 918 100638 nfsd = nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_w= ait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e= svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>= >>> 918 100639 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_s= ignals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> sv= c_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_t= rampoline+0xe=0A>>>>>>> 918 100640 nfsd nfsd: service mi_switch+0xe1=0A>>= >>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_si= g+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0= x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 918 100641 nfsd nfsd: service= mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf= =0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread= _start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 918 100= 642 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab= sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_inter= nal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0= xe=0A>>>>>>> 918 100643 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleep= q_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>= >>>>>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>= >> fork_trampoline+0xe=0A>>>>>>> 918 100644 nfsd nfsd: service mi_switch+= 0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _c= v_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0xb fo= rk_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 918 100645 nfsd nfsd= : service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_= sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc= _thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> = 918 100646 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signa= ls+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_ru= n_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_tramp= oline+0xe=0A>>>>>>> 918 100647 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>= > sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x= 16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a= =0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 918 100648 nfsd nfsd: service mi= _switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>= >>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_star= t+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 918 100649 n= fsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab slee= pq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0= x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A= >>>>>>> 918 100650 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_cat= ch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>= > svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fo= rk_trampoline+0xe=0A>>>>>>> 918 100651 nfsd nfsd: service mi_switch+0xe1= =0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wa= it_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0xb fork_e= xit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 918 100652 nfsd nfsd: se= rvice mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+= 0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thr= ead_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 918 = 100653 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0= xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_in= ternal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampolin= e+0xe=0A>>>>>>> 918 100654 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sl= eepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a= =0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>= >>>>>> fork_trampoline+0xe=0A>>>>>>> 918 100655 nfsd nfsd: service mi_swi= tch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>= > _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0x= b fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 918 100656 nfsd = nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_w= ait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e= svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>= >>> 918 100657 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_s= ignals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> sv= c_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_t= rampoline+0xe=0A>>>>>>> 918 100658 nfsd nfsd: service mi_switch+0xe1=0A>>= >>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_si= g+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0= x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 918 100659 nfsd nfsd: service= mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf= =0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread= _start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 918 100= 660 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab= sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_inter= nal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0= xe=0A>>>>>>> 918 100661 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleep= q_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>= >>>>>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>= >> fork_trampoline+0xe=0A>>>>>>> 918 100662 nfsd nfsd: service mi_switch+= 0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _c= v_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0xb fo= rk_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> ---=0A>>>>>>> =0A>>>= >>>> Now if we look at client (FreeBSD 9.3)=0A>>>>>>> =0A>>>>>>> We see s= ystem was very busy and do many and many interrupts=0A>>>>>>> =0A>>>>>>> = CPU: 0.0% user, 0.0% nice, 37.8% system, 51.2% interrupt, 11.0%=0A>>>>>>>= idle=0A>>>>>>> =0A>>>>>>> A look at process list shows that there are ma= ny sendmail=0A>>>>>>> process=0A>>>>>>> in=0A>>>>>>> state nfstry=0A>>>>>= >> =0A>>>>>>> nfstry 18 32:27 0.88% sendmail: Queue runner@00:30:00 for= =0A>>>>>>> /var/spool/clientm=0A>>>>>>> =0A>>>>>>> Here is 'nfsstat -c' o= utput:=0A>>>>>>> =0A>>>>>>> Client Info:=0A>>>>>>> Rpc Counts:=0A>>>>>>> = Getattr Setattr Lookup Readlink Read Write Create=0A>>>>>>> Remove=0A>>>>= >>> 1051347 1724 2494481 118=20903902 1901285 162676=0A>>>>>>> 161899=0A>= >>>>>> Rename Link Symlink Mkdir Rmdir Readdir RdirPlus=0A>>>>>>> Access= =0A>>>>>>> 36744 2 0 114 40 3131 0=0A>>>>>>> 544136=0A>>>>>>> Mknod Fssta= t Fsinfo PathConf Commit=0A>>>>>>> 9 0 0 0 245821=0A>>>>>>> Rpc Info:=0A>= >>>>>> TimedOut Invalid X Replies Retries Requests=0A>>>>>>> 0 0 0 0 8356= 557=0A>>>>>>> Cache Info:=0A>>>>>>> Attr Hits Misses Lkup Hits Misses Bio= R Hits Misses BioW Hits=0A>>>>>>> Misses=0A>>>>>>> 108754455 491475 54229= 224 2437229 46814561 821723 5132123=0A>>>>>>> 1871871=0A>>>>>>> BioRLHits= Misses BioD Hits Misses DirE Hits Misses Accs Hits=0A>>>>>>> Misses=0A>>= >>>>> 144035 118 53736 2753 27813 1 57238839=0A>>>>>>> 544205=0A>>>>>>> = =0A>>>>>>> If you need more things, tell me, i let the PoC in this state.= =0A>>>>>>> =0A>>>>>>> Thanks=0A>>>>>>> =0A>>>>>>> Regards,=0A>>>>>>> =0A>= >>>>>> Lo=C3=AFc Blot,=0A>>>>>>> UNIX Systems, Network and Security Engin= eer=0A>>>>>>> http://www.unix-experience.fr=0A>>>>>>> =0A>>>>>>> 21 d=C3= =A9cembre 2014 01:33 "Rick Macklem" a=0A>>>>>>> = =C3=A9crit:=0A>>>>>>> =0A>>>>>>> Loic Blot wrote:=0A>>>>>>> =0A>>>>>>>> H= i Rick,=0A>>>>>>>> ok, i don't need locallocks, i haven't understand opti= on was=0A>>>>>>>> for=0A>>>>>>>> that=0A>>>>>>>> usage, i removed it.=0A>= >>>>>>> I do more tests on monday.=0A>>>>>>>> Thanks for the deadlock fix= , for other people :)=0A>>>>>>> =0A>>>>>>> Good. Please let us know if ru= nning with=0A>>>>>>> vfs.nfsd.enable_locallocks=3D0=0A>>>>>>> gets rid of= the deadlocks? (I think it fixes the one you saw.)=0A>>>>>>> =0A>>>>>>> = On the performance side, you might also want to try different=0A>>>>>>> v= alues=0A>>>>>>> of=0A>>>>>>> readahead, if the Linux client has such a mo= unt option. (With=0A>>>>>>> the=0A>>>>>>> NFSv4-ZFS sequential vs random = I/O heuristic, I have no idea=0A>>>>>>> what=0A>>>>>>> the=0A>>>>>>> opti= mal readahead value would be.)=0A>>>>>>> =0A>>>>>>> Good luck with it and= please let us know how it goes, rick=0A>>>>>>> ps: I now have a patch to= fix the deadlock when=0A>>>>>>> vfs.nfsd.enable_locallocks=3D1=0A>>>>>>>= is set. I'll post it for anyone who is interested after I put=0A>>>>>>> = it=0A>>>>>>> through some testing.=0A>>>>>>> =0A>>>>>>> --=0A>>>>>>> Best= regards,=0A>>>>>>> Lo=C3=AFc BLOT,=0A>>>>>>> UNIX systems, security and = network engineer=0A>>>>>>> http://www.unix-experience.fr=0A>>>>>>> =0A>>>= >>>> Le jeudi 18 d=C3=A9cembre 2014 =C3=A0 19:46 -0500, Rick Macklem a = =C3=A9crit :=0A>>>>>>> =0A>>>>>>> Loic Blot wrote:=0A>>>>>>>> Hi rick,=0A= >>>>>>>> i tried to start a LXC container on Debian Squeeze from my=0A>>>= >>>>> freebsd=0A>>>>>>>> ZFS+NFSv4 server and i also have a deadlock on n= fsd=0A>>>>>>>> (vfs.lookup_shared=3D0). Deadlock procs each time i launch= a=0A>>>>>>>> squeeze=0A>>>>>>>> container, it seems (3 tries, 3 fails).= =0A>>>>>>> =0A>>>>>>> Well, I`ll take a look at this `procstat -kk`, but = the only=0A>>>>>>> thing=0A>>>>>>> I`ve seen posted w.r.t. avoiding deadl= ocks in ZFS is to not use=0A>>>>>>> nullfs. (I have no idea if you are us= ing any nullfs mounts, but=0A>>>>>>> if so, try getting rid of them.)=0A>= >>>>>> =0A>>>>>>> Here`s a high level post about the ZFS and vnode lockin= g=0A>>>>>>> problem,=0A>>>>>>> but there is no patch available, as far as= I know.=0A>>>>>>> =0A>>>>>>> http://docs.FreeBSD.org/cgi/mid.cgi?54739F4= 1.8030407=0A>>>>>>> =0A>>>>>>> rick=0A>>>>>>> =0A>>>>>>> 921 - D 0:00.02 = nfsd: server (nfsd)=0A>>>>>>> =0A>>>>>>> Here is the procstat -kk=0A>>>>>= >> =0A>>>>>>> PID TID COMM TDNAME KSTACK=0A>>>>>>> 921 100538 nfsd nfsd: = master mi_switch+0xe1=0A>>>>>>> sleepq_wait+0x3a sleeplk+0x15d __lockmgr_= args+0xc9e=0A>>>>>>> vop_stdlock+0x3c VOP_LOCK1_APV+0xab _vn_lock+0x43=0A= >>>>>>> nfsvno_advlock+0x119 nfsrv_dolocal+0x84 nfsrv_lockctrl+0x14ad=0A>= >>>>>> nfsrvd_locku+0x283 nfsrvd_dorpc+0xec6 nfssvc_program+0x554=0A>>>>>= >> svc_run_internal+0xc77 svc_run+0x1de nfsrvd_nfsd+0x1ca=0A>>>>>>> nfssv= c_nfsd+0x107 sys_nfssvc+0x9c=0A>>>>>>> 921 100572 nfsd nfsd: service mi_s= witch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>= >>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_start+= 0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 921 100573 nfs= d nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq= _wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x8= 7e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>= >>>>> 921 100574 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch= _signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> = svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork= _trampoline+0xe=0A>>>>>>> 921 100575 nfsd nfsd: service mi_switch+0xe1=0A= >>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_= sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit= +0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 921 100576 nfsd nfsd: servi= ce mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf= =0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread= _start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 921 100= 577 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab= sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_inter= nal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0= xe=0A>>>>>>> 921 100578 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleep= q_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>= >>>>>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>= >> fork_trampoline+0xe=0A>>>>>>> 921 100579 nfsd nfsd: service mi_switch+= 0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _c= v_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0xb fo= rk_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 921 100580 nfsd nfsd= : service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_= sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc= _thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> = 921 100581 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signa= ls+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_ru= n_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_tramp= oline+0xe=0A>>>>>>> 921 100582 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>= > sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x= 16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a= =0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 921 100583 nfsd nfsd: service mi= _switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>= >>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_star= t+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 921 100584 n= fsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab slee= pq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0= x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A= >>>>>>> 921 100585 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_cat= ch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>= > svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fo= rk_trampoline+0xe=0A>>>>>>> 921 100586 nfsd nfsd: service mi_switch+0xe1= =0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wa= it_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0xb fork_e= xit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 921 100587 nfsd nfsd: se= rvice mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+= 0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thr= ead_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 921 = 100588 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0= xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_in= ternal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampolin= e+0xe=0A>>>>>>> 921 100589 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sl= eepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a= =0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>= >>>>>> fork_trampoline+0xe=0A>>>>>>> 921 100590 nfsd nfsd: service mi_swi= tch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>= > _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0x= b fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 921 100591 nfsd = nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_w= ait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e= svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>= >>> 921 100592 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_s= ignals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> sv= c_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_t= rampoline+0xe=0A>>>>>>> 921 100593 nfsd nfsd: service mi_switch+0xe1=0A>>= >>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_si= g+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0= x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 921 100594 nfsd nfsd: service= mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf= =0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread= _start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 921 100= 595 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab= sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_inter= nal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0= xe=0A>>>>>>> 921 100596 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleep= q_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>= >>>>>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>= >> fork_trampoline+0xe=0A>>>>>>> 921 100597 nfsd nfsd: service mi_switch+= 0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _c= v_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0xb fo= rk_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 921 100598 nfsd nfsd= : service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_= sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc= _thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> = 921 100599 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signa= ls+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_ru= n_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_tramp= oline+0xe=0A>>>>>>> 921 100600 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>= > sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x= 16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a= =0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 921 100601 nfsd nfsd: service mi= _switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>= >>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_star= t+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 921 100602 n= fsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab slee= pq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0= x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A= >>>>>>> 921 100603 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_cat= ch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>= > svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fo= rk_trampoline+0xe=0A>>>>>>> 921 100604 nfsd nfsd: service mi_switch+0xe1= =0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wa= it_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0xb fork_e= xit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 921 100605 nfsd nfsd: se= rvice mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+= 0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thr= ead_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 921 = 100606 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0= xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_in= ternal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampolin= e+0xe=0A>>>>>>> 921 100607 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sl= eepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a= =0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>= >>>>>> fork_trampoline+0xe=0A>>>>>>> 921 100608 nfsd nfsd: service mi_swi= tch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>= > _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0x= b fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 921 100609 nfsd = nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_w= ait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e= svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>= >>> 921 100610 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_s= ignals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> sv= c_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_t= rampoline+0xe=0A>>>>>>> 921 100611 nfsd nfsd: service mi_switch+0xe1=0A>>= >>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_si= g+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0= x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 921 100612 nfsd nfsd: service= mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf= =0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread= _start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 921 100= 613 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab= sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_inter= nal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0= xe=0A>>>>>>> 921 100614 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleep= q_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>= >>>>>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>= >> fork_trampoline+0xe=0A>>>>>>> 921 100615 nfsd nfsd: service mi_switch+= 0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _c= v_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0xb fo= rk_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 921 100616 nfsd nfsd= : service mi_switch+0xe1=0A>>>>>>> sleepq_wait+0x3a _sleep+0x287 nfsmslee= p+0x66 nfsv4_lock+0x9b=0A>>>>>>> nfsrv_getlockfile+0x179 nfsrv_lockctrl+0= x21f nfsrvd_lock+0x5b1=0A>>>>>>> nfsrvd_dorpc+0xec6 nfssvc_program+0x554 = svc_run_internal+0xc77=0A>>>>>>> svc_thread_start+0xb fork_exit+0x9a fork= _trampoline+0xe=0A>>>>>>> 921 100617 nfsd nfsd: service mi_switch+0xe1=0A= >>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_= sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit= +0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 921 100618 nfsd nfsd: servi= ce mi_switch+0xe1=0A>>>>>>> sleepq_wait+0x3a _sleep+0x287 nfsmsleep+0x66 = nfsv4_lock+0x9b=0A>>>>>>> nfsrvd_dorpc+0x316 nfssvc_program+0x554 svc_run= _internal+0xc77=0A>>>>>>> svc_thread_start+0xb fork_exit+0x9a fork_trampo= line+0xe=0A>>>>>>> 921 100619 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>>= sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x1= 6a=0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a= =0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 921 100620 nfsd nfsd: service mi= _switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>= >>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_star= t+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 921 100621 n= fsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab slee= pq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0= x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A= >>>>>>> 921 100622 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_cat= ch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>= > svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fo= rk_trampoline+0xe=0A>>>>>>> 921 100623 nfsd nfsd: service mi_switch+0xe1= =0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wa= it_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0xb fork_e= xit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 921 100624 nfsd nfsd: se= rvice mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+= 0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thr= ead_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 921 = 100625 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0= xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_in= ternal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampolin= e+0xe=0A>>>>>>> 921 100626 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sl= eepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a= =0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>= >>>>>> fork_trampoline+0xe=0A>>>>>>> 921 100627 nfsd nfsd: service mi_swi= tch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>= > _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0x= b fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 921 100628 nfsd = nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_w= ait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e= svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>= >>> 921 100629 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_s= ignals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> sv= c_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_t= rampoline+0xe=0A>>>>>>> 921 100630 nfsd nfsd: service mi_switch+0xe1=0A>>= >>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_si= g+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0= x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 921 100631 nfsd nfsd: service= mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf= =0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread= _start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 921 100= 632 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab= sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_inter= nal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0= xe=0A>>>>>>> 921 100633 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleep= q_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>= >>>>>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>= >> fork_trampoline+0xe=0A>>>>>>> 921 100634 nfsd nfsd: service mi_switch+= 0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _c= v_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0xb fo= rk_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 921 100635 nfsd nfsd= : service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_= sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc= _thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> = 921 100636 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signa= ls+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_ru= n_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_tramp= oline+0xe=0A>>>>>>> 921 100637 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>= > sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x= 16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a= =0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 921 100638 nfsd nfsd: service mi= _switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>= >>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_star= t+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 921 100639 n= fsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab slee= pq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0= x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A= >>>>>>> 921 100640 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_cat= ch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>= > svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fo= rk_trampoline+0xe=0A>>>>>>> 921 100641 nfsd nfsd: service mi_switch+0xe1= =0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wa= it_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0xb fork_e= xit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 921 100642 nfsd nfsd: se= rvice mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+= 0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thr= ead_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 921 = 100643 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0= xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_in= ternal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampolin= e+0xe=0A>>>>>>> 921 100644 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sl= eepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a= =0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>= >>>>>> fork_trampoline+0xe=0A>>>>>>> 921 100645 nfsd nfsd: service mi_swi= tch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>= > _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0x= b fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 921 100646 nfsd = nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_w= ait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e= svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>= >>> 921 100647 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_s= ignals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> sv= c_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_t= rampoline+0xe=0A>>>>>>> 921 100648 nfsd nfsd: service mi_switch+0xe1=0A>>= >>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_si= g+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0= x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 921 100649 nfsd nfsd: service= mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf= =0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread= _start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 921 100= 650 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab= sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_inter= nal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0= xe=0A>>>>>>> 921 100651 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleep= q_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>= >>>>>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>= >> fork_trampoline+0xe=0A>>>>>>> 921 100652 nfsd nfsd: service mi_switch+= 0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _c= v_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0xb fo= rk_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 921 100653 nfsd nfsd= : service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_= sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc= _thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> = 921 100654 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signa= ls+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_ru= n_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_tramp= oline+0xe=0A>>>>>>> 921 100655 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>= > sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x= 16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a= =0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 921 100656 nfsd nfsd: service mi= _switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>= >>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_star= t+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 921 100657 n= fsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab slee= pq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0= x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A= >>>>>>> 921 100658 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_cat= ch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>= > svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fo= rk_trampoline+0xe=0A>>>>>>> 921 100659 nfsd nfsd: service mi_switch+0xe1= =0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wa= it_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0xb fork_e= xit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 921 100660 nfsd nfsd: se= rvice mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+= 0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thr= ead_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 921 = 100661 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0= xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_in= ternal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampolin= e+0xe=0A>>>>>>> 921 100662 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sl= eepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a= =0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>= >>>>>> fork_trampoline+0xe=0A>>>>>>> 921 100663 nfsd nfsd: service mi_swi= tch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>= > _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e svc_thread_start+0x= b fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>>> 921 100664 nfsd = nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_signals+0xab sleepq_w= ait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> svc_run_internal+0x87e= svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>= >>> 921 100665 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_catch_s= ignals+0xab sleepq_wait_sig+0xf=0A>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>> sv= c_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_t= rampoline+0xe=0A>>>>>>> 921 100666 nfsd nfsd: service mi_switch+0xe1=0A>>= >>>>> sleepq_wait+0x3a _sleep+0x287 nfsmsleep+0x66 nfsv4_lock+0x9b=0A>>>>= >>> nfsrv_setclient+0xbd nfsrvd_setclientid+0x3c8=0A>>>>>>> nfsrvd_dorpc+= 0xc76=0A>>>>>>> nfssvc_program+0x554 svc_run_internal+0xc77=0A>>>>>>> svc= _thread_start+0xb=0A>>>>>>> fork_exit+0x9a fork_trampoline+0xe=0A>>>>>>> = =0A>>>>>>> Regards,=0A>>>>>>> =0A>>>>>>> Lo=C3=AFc Blot,=0A>>>>>>> UNIX S= ystems, Network and Security Engineer=0A>>>>>>> http://www.unix-experienc= e.fr=0A>>>>>>> =0A>>>>>>> 15 d=C3=A9cembre 2014 15:18 "Rick Macklem" a=0A>>>>>>> =C3=A9crit:=0A>>>>>>> =0A>>>>>>> Loic Blot= wrote:=0A>>>>>>> =0A>>>>>>>> For more informations, here is procstat -kk= on nfsd, if you=0A>>>>>>>> need=0A>>>>>>>> more=0A>>>>>>>> hot datas, te= ll me.=0A>>>>>>>> =0A>>>>>>>> Regards, PID TID COMM TDNAME KSTACK=0A>>>>>= >>> 918 100529 nfsd nfsd: master mi_switch+0xe1=0A>>>>>>>> sleepq_wait+0x= 3a sleeplk+0x15d __lockmgr_args+0x902=0A>>>>>>>> vop_stdlock+0x3c VOP_LOC= K1_APV+0xab _vn_lock+0x43=0A>>>>>>>> zfs_fhtovp+0x38d=0A>>>>>>>> nfsvno_f= htovp+0x7c nfsd_fhtovp+0xc8 nfsrvd_dorpc+0x917=0A>>>>>>>> nfssvc_program+= 0x554 svc_run_internal+0xc77 svc_run+0x1de=0A>>>>>>>> nfsrvd_nfsd+0x1ca n= fssvc_nfsd+0x107 sys_nfssvc+0x9c=0A>>>>>>>> amd64_syscall+0x351=0A>>>>>>>= =0A>>>>>>> Well, most of the threads are stuck like this one, waiting fo= r=0A>>>>>>> a=0A>>>>>>> vnode=0A>>>>>>> lock in ZFS. All of them appear t= o be in zfs_fhtovp().=0A>>>>>>> I`m not a ZFS guy, so I can`t help much. = I`ll try changing the=0A>>>>>>> subject line=0A>>>>>>> to include ZFS vno= de lock, so maybe the ZFS guys will take a=0A>>>>>>> look.=0A>>>>>>> =0A>= >>>>>> The only thing I`ve seen suggested is trying:=0A>>>>>>> sysctl vfs= .lookup_shared=3D0=0A>>>>>>> to disable shared vop_lookup()s. Apparently = zfs_lookup()=0A>>>>>>> doesn`t=0A>>>>>>> obey the vnode locking rules for= lookup and rename, according=0A>>>>>>> to=0A>>>>>>> the posting I saw.= =0A>>>>>>> =0A>>>>>>> I`ve added a couple of comments about the other thr= eads below,=0A>>>>>>> but=0A>>>>>>> they are all either waiting for an RP= C request or waiting for=0A>>>>>>> the=0A>>>>>>> threads stuck on the ZFS= vnode lock to complete.=0A>>>>>>> =0A>>>>>>> rick=0A>>>>>>> =0A>>>>>>>> = 918 100564 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>>> sleepq_catch_sign= als+0xab sleepq_wait_sig+0xf=0A>>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>>> svc= _run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>>> fork_t= rampoline+0xe=0A>>>>>>> =0A>>>>>>> Fyi, this thread is just waiting for a= n RPC to arrive. (Normal)=0A>>>>>>> =0A>>>>>>>> 918 100565 nfsd nfsd: ser= vice mi_switch+0xe1=0A>>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+= 0xf=0A>>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>>> svc_run_internal+0x87e svc_t= hread_start+0xb fork_exit+0x9a=0A>>>>>>>> fork_trampoline+0xe=0A>>>>>>>> = 918 100566 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>>> sleepq_catch_sign= als+0xab sleepq_wait_sig+0xf=0A>>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>>> svc= _run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>>> fork_t= rampoline+0xe=0A>>>>>>>> 918 100567 nfsd nfsd: service mi_switch+0xe1=0A>= >>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>>> _cv_wait= _sig+0x16a=0A>>>>>>>> svc_run_internal+0x87e svc_thread_start+0xb fork_ex= it+0x9a=0A>>>>>>>> fork_trampoline+0xe=0A>>>>>>>> 918 100568 nfsd nfsd: s= ervice mi_switch+0xe1=0A>>>>>>>> sleepq_catch_signals+0xab sleepq_wait_si= g+0xf=0A>>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>>> svc_run_internal+0x87e svc= _thread_start+0xb fork_exit+0x9a=0A>>>>>>>> fork_trampoline+0xe=0A>>>>>>>= > 918 100569 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>>> sleepq_catch_si= gnals+0xab sleepq_wait_sig+0xf=0A>>>>>>>> _cv_wait_sig+0x16a=0A>>>>>>>> s= vc_run_internal+0x87e svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>>> fork= _trampoline+0xe=0A>>>>>>>> 918 100570 nfsd nfsd: service mi_switch+0xe1= =0A>>>>>>>> sleepq_catch_signals+0xab sleepq_wait_sig+0xf=0A>>>>>>>> _cv_= wait_sig+0x16a=0A>>>>>>>> svc_run_internal+0x87e svc_thread_start+0xb for= k_exit+0x9a=0A>>>>>>>> fork_trampoline+0xe=0A>>>>>>>> 918 100571 nfsd nfs= d: service mi_switch+0xe1=0A>>>>>>>> sleepq_wait+0x3a _sleep+0x287 nfsmsl= eep+0x66 nfsv4_lock+0x9b=0A>>>>>>>> nfsrvd_dorpc+0x316 nfssvc_program+0x5= 54 svc_run_internal+0xc77=0A>>>>>>>> svc_thread_start+0xb fork_exit+0x9a = fork_trampoline+0xe=0A>>>>>>>> 918 100572 nfsd nfsd: service mi_switch+0x= e1=0A>>>>>>>> sleepq_wait+0x3a _sleep+0x287 nfsmsleep+0x66 nfsv4_lock+0x9= b=0A>>>>>>>> nfsrv_setclient+0xbd nfsrvd_setclientid+0x3c8=0A>>>>>>>> nfs= rvd_dorpc+0xc76=0A>>>>>>>> nfssvc_program+0x554 svc_run_internal+0xc77=0A= >>>>>>>> svc_thread_start+0xb=0A>>>>>>>> fork_exit+0x9a fork_trampoline+0= xe=0A>>>>>>> =0A>>>>>>> This one (and a few others) are waiting for the n= fsv4_lock.=0A>>>>>>> This=0A>>>>>>> happens=0A>>>>>>> because other threa= ds are stuck with RPCs in progress. (ie. The=0A>>>>>>> ones=0A>>>>>>> wai= ting on the vnode lock in zfs_fhtovp().)=0A>>>>>>> For these, the RPC nee= ds to lock out other threads to do the=0A>>>>>>> operation,=0A>>>>>>> so = it waits for the nfsv4_lock() which can exclusively lock the=0A>>>>>>> NF= Sv4=0A>>>>>>> data structures once all other nfsd threads complete their = RPCs=0A>>>>>>> in=0A>>>>>>> progress.=0A>>>>>>> =0A>>>>>>>> 918 100573 nf= sd nfsd: service mi_switch+0xe1=0A>>>>>>>> sleepq_wait+0x3a _sleep+0x287 = nfsmsleep+0x66 nfsv4_lock+0x9b=0A>>>>>>>> nfsrvd_dorpc+0x316 nfssvc_progr= am+0x554 svc_run_internal+0xc77=0A>>>>>>>> svc_thread_start+0xb fork_exit= +0x9a fork_trampoline+0xe=0A>>>>>>> =0A>>>>>>> Same as above.=0A>>>>>>> = =0A>>>>>>>> 918 100574 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>>> sleep= q_wait+0x3a sleeplk+0x15d __lockmgr_args+0x902=0A>>>>>>>> vop_stdlock+0x3= c VOP_LOCK1_APV+0xab _vn_lock+0x43=0A>>>>>>>> zfs_fhtovp+0x38d=0A>>>>>>>>= nfsvno_fhtovp+0x7c nfsd_fhtovp+0xc8 nfsrvd_dorpc+0x917=0A>>>>>>>> nfssvc= _program+0x554 svc_run_internal+0xc77=0A>>>>>>>> svc_thread_start+0xb=0A>= >>>>>>> fork_exit+0x9a fork_trampoline+0xe=0A>>>>>>>> 918 100575 nfsd nfs= d: service mi_switch+0xe1=0A>>>>>>>> sleepq_wait+0x3a sleeplk+0x15d __loc= kmgr_args+0x902=0A>>>>>>>> vop_stdlock+0x3c VOP_LOCK1_APV+0xab _vn_lock+0= x43=0A>>>>>>>> zfs_fhtovp+0x38d=0A>>>>>>>> nfsvno_fhtovp+0x7c nfsd_fhtovp= +0xc8 nfsrvd_dorpc+0x917=0A>>>>>>>> nfssvc_program+0x554 svc_run_internal= +0xc77=0A>>>>>>>> svc_thread_start+0xb=0A>>>>>>>> fork_exit+0x9a fork_tra= mpoline+0xe=0A>>>>>>>> 918 100576 nfsd nfsd: service mi_switch+0xe1=0A>>>= >>>>> sleepq_wait+0x3a sleeplk+0x15d __lockmgr_args+0x902=0A>>>>>>>> vop_= stdlock+0x3c VOP_LOCK1_APV+0xab _vn_lock+0x43=0A>>>>>>>> zfs_fhtovp+0x38d= =0A>>>>>>>> nfsvno_fhtovp+0x7c nfsd_fhtovp+0xc8 nfsrvd_dorpc+0x917=0A>>>>= >>>> nfssvc_program+0x554 svc_run_internal+0xc77=0A>>>>>>>> svc_thread_st= art+0xb=0A>>>>>>>> fork_exit+0x9a fork_trampoline+0xe=0A>>>>>>>> 918 1005= 77 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>>> sleepq_wait+0x3a sleeplk+= 0x15d __lockmgr_args+0x902=0A>>>>>>>> vop_stdlock+0x3c VOP_LOCK1_APV+0xab= _vn_lock+0x43=0A>>>>>>>> zfs_fhtovp+0x38d=0A>>>>>>>> nfsvno_fhtovp+0x7c = nfsd_fhtovp+0xc8 nfsrvd_dorpc+0x917=0A>>>>>>>> nfssvc_program+0x554 svc_r= un_internal+0xc77=0A>>>>>>>> svc_thread_start+0xb=0A>>>>>>>> fork_exit+0x= 9a fork_trampoline+0xe=0A>>>>>>>> 918 100578 nfsd nfsd: service mi_switch= +0xe1=0A>>>>>>>> sleepq_wait+0x3a sleeplk+0x15d __lockmgr_args+0x902=0A>>= >>>>>> vop_stdlock+0x3c VOP_LOCK1_APV+0xab _vn_lock+0x43=0A>>>>>>>> zfs_f= htovp+0x38d=0A>>>>>>>> nfsvno_fhtovp+0x7c nfsd_fhtovp+0xc8 nfsrvd_dorpc+0= x917=0A>>>>>>>> nfssvc_program+0x554 svc_run_internal+0xc77=0A>>>>>>>> sv= c_thread_start+0xb=0A>>>>>>>> fork_exit+0x9a fork_trampoline+0xe=0A>>>>>>= >> 918 100579 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>>> sleepq_wait+0x= 3a sleeplk+0x15d __lockmgr_args+0x902=0A>>>>>>>> vop_stdlock+0x3c VOP_LOC= K1_APV+0xab _vn_lock+0x43=0A>>>>>>>> zfs_fhtovp+0x38d=0A>>>>>>>> nfsvno_f= htovp+0x7c nfsd_fhtovp+0xc8 nfsrvd_dorpc+0x917=0A>>>>>>>> nfssvc_program+= 0x554 svc_run_internal+0xc77=0A>>>>>>>> svc_thread_start+0xb=0A>>>>>>>> f= ork_exit+0x9a fork_trampoline+0xe=0A>>>>>>>> 918 100580 nfsd nfsd: servic= e mi_switch+0xe1=0A>>>>>>>> sleepq_wait+0x3a sleeplk+0x15d __lockmgr_args= +0x902=0A>>>>>>>> vop_stdlock+0x3c VOP_LOCK1_APV+0xab _vn_lock+0x43=0A>>>= >>>>> zfs_fhtovp+0x38d=0A>>>>>>>> nfsvno_fhtovp+0x7c nfsd_fhtovp+0xc8 nfs= rvd_dorpc+0x917=0A>>>>>>>> nfssvc_program+0x554 svc_run_internal+0xc77=0A= >>>>>>>> svc_thread_start+0xb=0A>>>>>>>> fork_exit+0x9a fork_trampoline+0= xe=0A>>>>>>>> 918 100581 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>>> sle= epq_wait+0x3a sleeplk+0x15d __lockmgr_args+0x902=0A>>>>>>>> vop_stdlock+0= x3c VOP_LOCK1_APV+0xab _vn_lock+0x43=0A>>>>>>>> zfs_fhtovp+0x38d=0A>>>>>>= >> nfsvno_fhtovp+0x7c nfsd_fhtovp+0xc8 nfsrvd_dorpc+0x917=0A>>>>>>>> nfss= vc_program+0x554 svc_run_internal+0xc77=0A>>>>>>>> svc_thread_start+0xb= =0A>>>>>>>> fork_exit+0x9a fork_trampoline+0xe=0A>>>>>>>> 918 100582 nfsd= nfsd: service mi_switch+0xe1=0A>>>>>>>> sleepq_wait+0x3a sleeplk+0x15d _= _lockmgr_args+0x902=0A>>>>>>>> vop_stdlock+0x3c VOP_LOCK1_APV+0xab _vn_lo= ck+0x43=0A>>>>>>>> zfs_fhtovp+0x38d=0A>>>>>>>> nfsvno_fhtovp+0x7c nfsd_fh= tovp+0xc8 nfsrvd_dorpc+0x917=0A>>>>>>>> nfssvc_program+0x554 svc_run_inte= rnal+0xc77=0A>>>>>>>> svc_thread_start+0xb=0A>>>>>>>> fork_exit+0x9a fork= _trampoline+0xe=0A>>>>>>>> 918 100583 nfsd nfsd: service mi_switch+0xe1= =0A>>>>>>>> sleepq_wait+0x3a sleeplk+0x15d __lockmgr_args+0x902=0A>>>>>>>= > vop_stdlock+0x3c VOP_LOCK1_APV+0xab _vn_lock+0x43=0A>>>>>>>> zfs_fhtovp= +0x38d=0A>>>>>>>> nfsvno_fhtovp+0x7c nfsd_fhtovp+0xc8 nfsrvd_dorpc+0x917= =0A>>>>>>>> nfssvc_program+0x554 svc_run_internal+0xc77=0A>>>>>>>> svc_th= read_start+0xb=0A>>>>>>>> fork_exit+0x9a fork_trampoline+0xe=0A>>>>>>>> 9= 18 100584 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>>> sleepq_wait+0x3a s= leeplk+0x15d __lockmgr_args+0x902=0A>>>>>>>> vop_stdlock+0x3c VOP_LOCK1_A= PV+0xab _vn_lock+0x43=0A>>>>>>>> zfs_fhtovp+0x38d=0A>>>>>>>> nfsvno_fhtov= p+0x7c nfsd_fhtovp+0xc8 nfsrvd_dorpc+0x917=0A>>>>>>>> nfssvc_program+0x55= 4 svc_run_internal+0xc77=0A>>>>>>>> svc_thread_start+0xb=0A>>>>>>>> fork_= exit+0x9a fork_trampoline+0xe=0A>>>>>>>> 918 100585 nfsd nfsd: service mi= _switch+0xe1=0A>>>>>>>> sleepq_wait+0x3a sleeplk+0x15d __lockmgr_args+0x9= 02=0A>>>>>>>> vop_stdlock+0x3c VOP_LOCK1_APV+0xab _vn_lock+0x43=0A>>>>>>>= > zfs_fhtovp+0x38d=0A>>>>>>>> nfsvno_fhtovp+0x7c nfsd_fhtovp+0xc8 nfsrvd_= dorpc+0x917=0A>>>>>>>> nfssvc_program+0x554 svc_run_internal+0xc77=0A>>>>= >>>> svc_thread_start+0xb=0A>>>>>>>> fork_exit+0x9a fork_trampoline+0xe= =0A>>>>>>>> 918 100586 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>>> sleep= q_wait+0x3a sleeplk+0x15d __lockmgr_args+0x902=0A>>>>>>>> vop_stdlock+0x3= c VOP_LOCK1_APV+0xab _vn_lock+0x43=0A>>>>>>>> zfs_fhtovp+0x38d=0A>>>>>>>>= nfsvno_fhtovp+0x7c nfsd_fhtovp+0xc8 nfsrvd_dorpc+0x917=0A>>>>>>>> nfssvc= _program+0x554 svc_run_internal+0xc77=0A>>>>>>>> svc_thread_start+0xb=0A>= >>>>>>> fork_exit+0x9a fork_trampoline+0xe=0A>>>>>>>> 918 100587 nfsd nfs= d: service mi_switch+0xe1=0A>>>>>>>> sleepq_wait+0x3a sleeplk+0x15d __loc= kmgr_args+0x902=0A>>>>>>>> vop_stdlock+0x3c VOP_LOCK1_APV+0xab _vn_lock+0= x43=0A>>>>>>>> zfs_fhtovp+0x38d=0A>>>>>>>> nfsvno_fhtovp+0x7c nfsd_fhtovp= +0xc8 nfsrvd_dorpc+0x917=0A>>>>>>>> nfssvc_program+0x554 svc_run_internal= +0xc77=0A>>>>>>>> svc_thread_start+0xb=0A>>>>>>>> fork_exit+0x9a fork_tra= mpoline+0xe=0A>>>>>>>> 918 100588 nfsd nfsd: service mi_switch+0xe1=0A>>>= >>>>> sleepq_wait+0x3a sleeplk+0x15d __lockmgr_args+0x902=0A>>>>>>>> vop_= stdlock+0x3c VOP_LOCK1_APV+0xab _vn_lock+0x43=0A>>>>>>>> zfs_fhtovp+0x38d= =0A>>>>>>>> nfsvno_fhtovp+0x7c nfsd_fhtovp+0xc8 nfsrvd_dorpc+0x917=0A>>>>= >>>> nfssvc_program+0x554 svc_run_internal+0xc77=0A>>>>>>>> svc_thread_st= art+0xb=0A>>>>>>>> fork_exit+0x9a fork_trampoline+0xe=0A>>>>>>>> 918 1005= 89 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>>> sleepq_wait+0x3a sleeplk+= 0x15d __lockmgr_args+0x902=0A>>>>>>>> vop_stdlock+0x3c VOP_LOCK1_APV+0xab= _vn_lock+0x43=0A>>>>>>>> zfs_fhtovp+0x38d=0A>>>>>>>> nfsvno_fhtovp+0x7c = nfsd_fhtovp+0xc8 nfsrvd_dorpc+0x917=0A>>>>>>>> nfssvc_program+0x554 svc_r= un_internal+0xc77=0A>>>>>>>> svc_thread_start+0xb=0A>>>>>>>> fork_exit+0x= 9a fork_trampoline+0xe=0A>>>>>>>> 918 100590 nfsd nfsd: service mi_switch= +0xe1=0A>>>>>>>> sleepq_wait+0x3a sleeplk+0x15d __lockmgr_args+0x902=0A>>= >>>>>> vop_stdlock+0x3c VOP_LOCK1_APV+0xab _vn_lock+0x43=0A>>>>>>>> zfs_f= htovp+0x38d=0A>>>>>>>> nfsvno_fhtovp+0x7c nfsd_fhtovp+0xc8 nfsrvd_dorpc+0= x917=0A>>>>>>>> nfssvc_program+0x554 svc_run_internal+0xc77=0A>>>>>>>> sv= c_thread_start+0xb=0A>>>>>>>> fork_exit+0x9a fork_trampoline+0xe=0A>>>>>>= >> 918 100591 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>>> sleepq_wait+0x= 3a sleeplk+0x15d __lockmgr_args+0x902=0A>>>>>>>> vop_stdlock+0x3c VOP_LOC= K1_APV+0xab _vn_lock+0x43=0A>>>>>>>> zfs_fhtovp+0x38d=0A>>>>>>>> nfsvno_f= htovp+0x7c nfsd_fhtovp+0xc8 nfsrvd_dorpc+0x917=0A>>>>>>>> nfssvc_program+= 0x554 svc_run_internal+0xc77=0A>>>>>>>> svc_thread_start+0xb=0A>>>>>>>> f= ork_exit+0x9a fork_trampoline+0xe=0A>>>>>>>> 918 100592 nfsd nfsd: servic= e mi_switch+0xe1=0A>>>>>>>> sleepq_wait+0x3a sleeplk+0x15d __lockmgr_args= +0x902=0A>>>>>>>> vop_stdlock+0x3c VOP_LOCK1_APV+0xab _vn_lock+0x43=0A>>>= >>>>> zfs_fhtovp+0x38d=0A>>>>>>>> nfsvno_fhtovp+0x7c nfsd_fhtovp+0xc8 nfs= rvd_dorpc+0x917=0A>>>>>>>> nfssvc_program+0x554 svc_run_internal+0xc77=0A= >>>>>>>> svc_thread_start+0xb=0A>>>>>>>> fork_exit+0x9a fork_trampoline+0= xe=0A>>>>>>>> 918 100593 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>>> sle= epq_wait+0x3a sleeplk+0x15d __lockmgr_args+0x902=0A>>>>>>>> vop_stdlock+0= x3c VOP_LOCK1_APV+0xab _vn_lock+0x43=0A>>>>>>>> zfs_fhtovp+0x38d=0A>>>>>>= >> nfsvno_fhtovp+0x7c nfsd_fhtovp+0xc8 nfsrvd_dorpc+0x917=0A>>>>>>>> nfss= vc_program+0x554 svc_run_internal+0xc77=0A>>>>>>>> svc_thread_start+0xb= =0A>>>>>>>> fork_exit+0x9a fork_trampoline+0xe=0A>>>>>>>> 918 100594 nfsd= nfsd: service mi_switch+0xe1=0A>>>>>>>> sleepq_wait+0x3a sleeplk+0x15d _= _lockmgr_args+0x902=0A>>>>>>>> vop_stdlock+0x3c VOP_LOCK1_APV+0xab _vn_lo= ck+0x43=0A>>>>>>>> zfs_fhtovp+0x38d=0A>>>>>>>> nfsvno_fhtovp+0x7c nfsd_fh= tovp+0xc8 nfsrvd_dorpc+0x917=0A>>>>>>>> nfssvc_program+0x554 svc_run_inte= rnal+0xc77=0A>>>>>>>> svc_thread_start+0xb=0A>>>>>>>> fork_exit+0x9a fork= _trampoline+0xe=0A>>>>>>>> 918 100595 nfsd nfsd: service mi_switch+0xe1= =0A>>>>>>>> sleepq_wait+0x3a sleeplk+0x15d __lockmgr_args+0x902=0A>>>>>>>= > vop_stdlock+0x3c VOP_LOCK1_APV+0xab _vn_lock+0x43=0A>>>>>>>> zfs_fhtovp= +0x38d=0A>>>>>>>> nfsvno_fhtovp+0x7c nfsd_fhtovp+0xc8 nfsrvd_dorpc+0x917= =0A>>>>>>>> nfssvc_program+0x554 svc_run_internal+0xc77=0A>>>>>>>> svc_th= read_start+0xb=0A>>>>>>>> fork_exit+0x9a fork_trampoline+0xe=0A>>>>>>>> 9= 18 100596 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>>> sleepq_wait+0x3a s= leeplk+0x15d __lockmgr_args+0x902=0A>>>>>>>> vop_stdlock+0x3c VOP_LOCK1_A= PV+0xab _vn_lock+0x43=0A>>>>>>>> zfs_fhtovp+0x38d=0A>>>>>>>> nfsvno_fhtov= p+0x7c nfsd_fhtovp+0xc8 nfsrvd_dorpc+0x917=0A>>>>>>>> nfssvc_program+0x55= 4 svc_run_internal+0xc77=0A>>>>>>>> svc_thread_start+0xb=0A>>>>>>>> fork_= exit+0x9a fork_trampoline+0xe=0A>>>>>>>> 918 100597 nfsd nfsd: service mi= _switch+0xe1=0A>>>>>>>> sleepq_wait+0x3a sleeplk+0x15d __lockmgr_args+0x9= 02=0A>>>>>>>> vop_stdlock+0x3c VOP_LOCK1_APV+0xab _vn_lock+0x43=0A>>>>>>>= > zfs_fhtovp+0x38d=0A>>>>>>>> nfsvno_fhtovp+0x7c nfsd_fhtovp+0xc8 nfsrvd_= dorpc+0x917=0A>>>>>>>> nfssvc_program+0x554 svc_run_internal+0xc77=0A>>>>= >>>> svc_thread_start+0xb=0A>>>>>>>> fork_exit+0x9a fork_trampoline+0xe= =0A>>>>>>>> 918 100598 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>>> sleep= q_wait+0x3a sleeplk+0x15d __lockmgr_args+0x902=0A>>>>>>>> vop_stdlock+0x3= c VOP_LOCK1_APV+0xab _vn_lock+0x43=0A>>>>>>>> zfs_fhtovp+0x38d=0A>>>>>>>>= nfsvno_fhtovp+0x7c nfsd_fhtovp+0xc8 nfsrvd_dorpc+0x917=0A>>>>>>>> nfssvc= _program+0x554 svc_run_internal+0xc77=0A>>>>>>>> svc_thread_start+0xb=0A>= >>>>>>> fork_exit+0x9a fork_trampoline+0xe=0A>>>>>>>> 918 100599 nfsd nfs= d: service mi_switch+0xe1=0A>>>>>>>> sleepq_wait+0x3a sleeplk+0x15d __loc= kmgr_args+0x902=0A>>>>>>>> vop_stdlock+0x3c VOP_LOCK1_APV+0xab _vn_lock+0= x43=0A>>>>>>>> zfs_fhtovp+0x38d=0A>>>>>>>> nfsvno_fhtovp+0x7c nfsd_fhtovp= +0xc8 nfsrvd_dorpc+0x917=0A>>>>>>>> nfssvc_program+0x554 svc_run_internal= +0xc77=0A>>>>>>>> svc_thread_start+0xb=0A>>>>>>>> fork_exit+0x9a fork_tra= mpoline+0xe=0A>>>>>>>> 918 100600 nfsd nfsd: service mi_switch+0xe1=0A>>>= >>>>> sleepq_wait+0x3a sleeplk+0x15d __lockmgr_args+0x902=0A>>>>>>>> vop_= stdlock+0x3c VOP_LOCK1_APV+0xab _vn_lock+0x43=0A>>>>>>>> zfs_fhtovp+0x38d= =0A>>>>>>>> nfsvno_fhtovp+0x7c nfsd_fhtovp+0xc8 nfsrvd_dorpc+0x917=0A>>>>= >>>> nfssvc_program+0x554 svc_run_internal+0xc77=0A>>>>>>>> svc_thread_st= art+0xb=0A>>>>>>>> fork_exit+0x9a fork_trampoline+0xe=0A>>>>>>>> 918 1006= 01 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>>> sleepq_wait+0x3a sleeplk+= 0x15d __lockmgr_args+0x902=0A>>>>>>>> vop_stdlock+0x3c VOP_LOCK1_APV+0xab= _vn_lock+0x43=0A>>>>>>>> zfs_fhtovp+0x38d=0A>>>>>>>> nfsvno_fhtovp+0x7c = nfsd_fhtovp+0xc8 nfsrvd_dorpc+0x917=0A>>>>>>>> nfssvc_program+0x554 svc_r= un_internal+0xc77=0A>>>>>>>> svc_thread_start+0xb=0A>>>>>>>> fork_exit+0x= 9a fork_trampoline+0xe=0A>>>>>>>> 918 100602 nfsd nfsd: service mi_switch= +0xe1=0A>>>>>>>> sleepq_wait+0x3a sleeplk+0x15d __lockmgr_args+0x902=0A>>= >>>>>> vop_stdlock+0x3c VOP_LOCK1_APV+0xab _vn_lock+0x43=0A>>>>>>>> zfs_f= htovp+0x38d=0A>>>>>>>> nfsvno_fhtovp+0x7c nfsd_fhtovp+0xc8 nfsrvd_dorpc+0= x917=0A>>>>>>>> nfssvc_program+0x554 svc_run_internal+0xc77=0A>>>>>>>> sv= c_thread_start+0xb=0A>>>>>>>> fork_exit+0x9a fork_trampoline+0xe=0A>>>>>>= >> 918 100603 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>>> sleepq_wait+0x= 3a sleeplk+0x15d __lockmgr_args+0x902=0A>>>>>>>> vop_stdlock+0x3c VOP_LOC= K1_APV+0xab _vn_lock+0x43=0A>>>>>>>> zfs_fhtovp+0x38d=0A>>>>>>>> nfsvno_f= htovp+0x7c nfsd_fhtovp+0xc8 nfsrvd_dorpc+0x917=0A>>>>>>>> nfssvc_program+= 0x554 svc_run_internal+0xc77=0A>>>>>>>> svc_thread_start+0xb=0A>>>>>>>> f= ork_exit+0x9a fork_trampoline+0xe=0A>>>>>>>> 918 100604 nfsd nfsd: servic= e mi_switch+0xe1=0A>>>>>>>> sleepq_wait+0x3a sleeplk+0x15d __lockmgr_args= +0x902=0A>>>>>>>> vop_stdlock+0x3c VOP_LOCK1_APV+0xab _vn_lock+0x43=0A>>>= >>>>> zfs_fhtovp+0x38d=0A>>>>>>>> nfsvno_fhtovp+0x7c nfsd_fhtovp+0xc8 nfs= rvd_dorpc+0x917=0A>>>>>>>> nfssvc_program+0x554 svc_run_internal+0xc77=0A= >>>>>>>> svc_thread_start+0xb=0A>>>>>>>> fork_exit+0x9a fork_trampoline+0= xe=0A>>>>>>>> 918 100605 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>>> sle= epq_wait+0x3a sleeplk+0x15d __lockmgr_args+0x902=0A>>>>>>>> vop_stdlock+0= x3c VOP_LOCK1_APV+0xab _vn_lock+0x43=0A>>>>>>>> zfs_fhtovp+0x38d=0A>>>>>>= >> nfsvno_fhtovp+0x7c nfsd_fhtovp+0xc8 nfsrvd_dorpc+0x917=0A>>>>>>>> nfss= vc_program+0x554 svc_run_internal+0xc77=0A>>>>>>>> svc_thread_start+0xb= =0A>>>>>>>> fork_exit+0x9a fork_trampoline+0xe=0A>>>>>>>> 918 100606 nfsd= nfsd: service mi_switch+0xe1=0A>>>>>>>> sleepq_wait+0x3a sleeplk+0x15d _= _lockmgr_args+0x902=0A>>>>>>>> vop_stdlock+0x3c VOP_LOCK1_APV+0xab _vn_lo= ck+0x43=0A>>>>>>>> zfs_fhtovp+0x38d=0A>>>>>>>> nfsvno_fhtovp+0x7c nfsd_fh= tovp+0xc8 nfsrvd_dorpc+0x917=0A>>>>>>>> nfssvc_program+0x554 svc_run_inte= rnal+0xc77=0A>>>>>>>> svc_thread_start+0xb=0A>>>>>>>> fork_exit+0x9a fork= _trampoline+0xe=0A>>>>>>>> 918 100607 nfsd nfsd: service mi_switch+0xe1= =0A>>>>>>>> sleepq_wait+0x3a sleeplk+0x15d __lockmgr_args+0x902=0A>>>>>>>= > vop_stdlock+0x3c VOP_LOCK1_APV+0xab _vn_lock+0x43=0A>>>>>>>> zfs_fhtovp= +0x38d=0A>>>>>>>> nfsvno_fhtovp+0x7c nfsd_fhtovp+0xc8 nfsrvd_dorpc+0x917= =0A>>>>>>>> nfssvc_program+0x554 svc_run_internal+0xc77=0A>>>>>>>> svc_th= read_start+0xb=0A>>>>>>>> fork_exit+0x9a fork_trampoline+0xe=0A>>>>>>> = =0A>>>>>>> Lots more waiting for the ZFS vnode lock in zfs_fhtovp().=0A>>= >>>>> =0A>>>>>>> 918 100608 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> s= leepq_wait+0x3a _sleep+0x287 nfsmsleep+0x66 nfsv4_lock+0x9b=0A>>>>>>> nfs= rv_getlockfile+0x179 nfsrv_lockctrl+0x21f nfsrvd_lock+0x5b1=0A>>>>>>> nfs= rvd_dorpc+0xec6 nfssvc_program+0x554 svc_run_internal+0xc77=0A>>>>>>> svc= _thread_start+0xb fork_exit+0x9a fork_trampoline+0xe=0A>>>>>>> 918 100609= nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_wait+0x3a sleeplk+0x1= 5d __lockmgr_args+0x902=0A>>>>>>> vop_stdlock+0x3c VOP_LOCK1_APV+0xab _vn= _lock+0x43=0A>>>>>>> zfs_fhtovp+0x38d=0A>>>>>>> nfsvno_fhtovp+0x7c nfsd_f= htovp+0xc8 nfsrvd_dorpc+0x917=0A>>>>>>> nfssvc_program+0x554 svc_run_inte= rnal+0xc77=0A>>>>>>> svc_thread_start+0xb=0A>>>>>>> fork_exit+0x9a fork_t= rampoline+0xe=0A>>>>>>> 918 100610 nfsd nfsd: service mi_switch+0xe1=0A>>= >>>>> sleepq_wait+0x3a sleeplk+0x15d __lockmgr_args+0xc9e=0A>>>>>>> vop_s= tdlock+0x3c VOP_LOCK1_APV+0xab _vn_lock+0x43=0A>>>>>>> nfsvno_advlock+0x1= 19 nfsrv_dolocal+0x84 nfsrv_lockctrl+0x14ad=0A>>>>>>> nfsrvd_locku+0x283 = nfsrvd_dorpc+0xec6 nfssvc_program+0x554=0A>>>>>>> svc_run_internal+0xc77 = svc_thread_start+0xb fork_exit+0x9a=0A>>>>>>> fork_trampoline+0xe=0A>>>>>= >> 918 100611 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_wait+0x3= a _sleep+0x287 nfsmsleep+0x66 nfsv4_lock+0x9b=0A>>>>>>> nfsrvd_dorpc+0x31= 6 nfssvc_program+0x554 svc_run_internal+0xc77=0A>>>>>>> svc_thread_start+= 0xb fork_exit+0x9a fork_trampoline+0xe=0A>>>>>>> 918 100612 nfsd nfsd: se= rvice mi_switch+0xe1=0A>>>>>>> sleepq_wait+0x3a _sleep+0x287 nfsmsleep+0x= 66 nfsv4_lock+0x9b=0A>>>>>>> nfsrvd_dorpc+0x316 nfssvc_program+0x554 svc_= run_internal+0xc77=0A>>>>>>> svc_thread_start+0xb fork_exit+0x9a fork_tra= mpoline+0xe=0A>>>>>>> 918 100613 nfsd nfsd: service mi_switch+0xe1=0A>>>>= >>> sleepq_wait+0x3a _sleep+0x287 nfsmsleep+0x66 nfsv4_lock+0x9b=0A>>>>>>= > nfsrvd_dorpc+0x316 nfssvc_program+0x554 svc_run_internal+0xc77=0A>>>>>>= > svc_thread_start+0xb fork_exit+0x9a fork_trampoline+0xe=0A>>>>>>> 918 1= 00614 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_wait+0x3a _sleep= +0x287 nfsmsleep+0x66 nfsv4_lock+0x9b=0A>>>>>>> nfsrvd_dorpc+0x316 nfssvc= _program+0x554 svc_run_internal+0xc77=0A>>>>>>> svc_thread_start+0xb fork= _exit+0x9a fork_trampoline+0xe=0A>>>>>>> 918 100615 nfsd nfsd: service mi= _switch+0xe1=0A>>>>>>> sleepq_wait+0x3a _sleep+0x287 nfsmsleep+0x66 nfsv4= _lock+0x9b=0A>>>>>>> nfsrvd_dorpc+0x316 nfssvc_program+0x554 svc_run_inte= rnal+0xc77=0A>>>>>>> svc_thread_start+0xb fork_exit+0x9a fork_trampoline+= 0xe=0A>>>>>>> 918 100616 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> slee= pq_wait+0x3a _sleep+0x287 nfsmsleep+0x66 nfsv4_lock+0x9b=0A>>>>>>> nfsrvd= _dorpc+0x316 nfssvc_program+0x554 svc_run_internal+0xc77=0A>>>>>>> svc_th= read_start+0xb fork_exit+0x9a fork_trampoline+0xe=0A>>>>>>> 918 100617 nf= sd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_wait+0x3a _sleep+0x287 n= fsmsleep+0x66 nfsv4_lock+0x9b=0A>>>>>>> nfsrvd_dorpc+0x316 nfssvc_program= +0x554 svc_run_internal+0xc77=0A>>>>>>> svc_thread_start+0xb fork_exit+0x= 9a fork_trampoline+0xe=0A>>>>>>> 918 100618 nfsd nfsd: service mi_switch+= 0xe1=0A>>>>>>> sleepq_wait+0x3a _sleep+0x287 nfsmsleep+0x66 nfsv4_lock+0x= 9b=0A>>>>>>> nfsrvd_dorpc+0x316 nfssvc_program+0x554 svc_run_internal+0xc= 77=0A>>>>>>> svc_thread_start+0xb fork_exit+0x9a fork_trampoline+0xe=0A>>= >>>>> 918 100619 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_wait+= 0x3a sleeplk+0x15d __lockmgr_args+0x902=0A>>>>>>> vop_stdlock+0x3c VOP_LO= CK1_APV+0xab _vn_lock+0x43=0A>>>>>>> zfs_fhtovp+0x38d=0A>>>>>>> nfsvno_fh= tovp+0x7c nfsd_fhtovp+0xc8 nfsrvd_dorpc+0x917=0A>>>>>>> nfssvc_program+0x= 554 svc_run_internal+0xc77=0A>>>>>>> svc_thread_start+0xb=0A>>>>>>> fork_= exit+0x9a fork_trampoline+0xe=0A>>>>>>> 918 100620 nfsd nfsd: service mi_= switch+0xe1=0A>>>>>>> sleepq_wait+0x3a sleeplk+0x15d __lockmgr_args+0x902= =0A>>>>>>> vop_stdlock+0x3c VOP_LOCK1_APV+0xab _vn_lock+0x43=0A>>>>>>> zf= s_fhtovp+0x38d=0A>>>>>>> nfsvno_fhtovp+0x7c nfsd_fhtovp+0xc8 nfsrvd_dorpc= +0x917=0A>>>>>>> nfssvc_program+0x554 svc_run_internal+0xc77=0A>>>>>>> sv= c_thread_start+0xb=0A>>>>>>> fork_exit+0x9a fork_trampoline+0xe=0A>>>>>>>= 918 100621 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_wait+0x3a = _sleep+0x287 nfsmsleep+0x66 nfsv4_lock+0x9b=0A>>>>>>> nfsrvd_dorpc+0x316 = nfssvc_program+0x554 svc_run_internal+0xc77=0A>>>>>>> svc_thread_start+0x= b fork_exit+0x9a fork_trampoline+0xe=0A>>>>>>> 918 100622 nfsd nfsd: serv= ice mi_switch+0xe1=0A>>>>>>> sleepq_wait+0x3a sleeplk+0x15d __lockmgr_arg= s+0x902=0A>>>>>>> vop_stdlock+0x3c VOP_LOCK1_APV+0xab _vn_lock+0x43=0A>>>= >>>> zfs_fhtovp+0x38d=0A>>>>>>> nfsvno_fhtovp+0x7c nfsd_fhtovp+0xc8 nfsrv= d_dorpc+0x917=0A>>>>>>> nfssvc_program+0x554 svc_run_internal+0xc77=0A>>>= >>>> svc_thread_start+0xb=0A>>>>>>> fork_exit+0x9a fork_trampoline+0xe=0A= >>>>>>> 918 100623 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_wai= t+0x3a _sleep+0x287 nfsmsleep+0x66 nfsv4_lock+0x9b=0A>>>>>>> nfsrvd_dorpc= +0x316 nfssvc_program+0x554 svc_run_internal+0xc77=0A>>>>>>> svc_thread_s= tart+0xb fork_exit+0x9a fork_trampoline+0xe=0A>>>>>>> 918 100624 nfsd nfs= d: service mi_switch+0xe1=0A>>>>>>> sleepq_wait+0x3a sleeplk+0x15d __lock= mgr_args+0x902=0A>>>>>>> vop_stdlock+0x3c VOP_LOCK1_APV+0xab _vn_lock+0x4= 3=0A>>>>>>> zfs_fhtovp+0x38d=0A>>>>>>> nfsvno_fhtovp+0x7c nfsd_fhtovp+0xc= 8 nfsrvd_dorpc+0x917=0A>>>>>>> nfssvc_program+0x554 svc_run_internal+0xc7= 7=0A>>>>>>> svc_thread_start+0xb=0A>>>>>>>=20fork_exit+0x9a fork_trampoli= ne+0xe=0A>>>>>>> 918 100625 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> s= leepq_wait+0x3a sleeplk+0x15d __lockmgr_args+0x902=0A>>>>>>> vop_stdlock+= 0x3c VOP_LOCK1_APV+0xab _vn_lock+0x43=0A>>>>>>> zfs_fhtovp+0x38d=0A>>>>>>= > nfsvno_fhtovp+0x7c nfsd_fhtovp+0xc8 nfsrvd_dorpc+0x917=0A>>>>>>> nfssvc= _program+0x554 svc_run_internal+0xc77=0A>>>>>>> svc_thread_start+0xb=0A>>= >>>>> fork_exit+0x9a fork_trampoline+0xe=0A>>>>>>> 918 100626 nfsd nfsd: = service mi_switch+0xe1=0A>>>>>>> sleepq_wait+0x3a sleeplk+0x15d __lockmgr= _args+0x902=0A>>>>>>> vop_stdlock+0x3c VOP_LOCK1_APV+0xab _vn_lock+0x43= =0A>>>>>>> zfs_fhtovp+0x38d=0A>>>>>>> nfsvno_fhtovp+0x7c nfsd_fhtovp+0xc8= nfsrvd_dorpc+0x917=0A>>>>>>> nfssvc_program+0x554 svc_run_internal+0xc77= =0A>>>>>>> svc_thread_start+0xb=0A>>>>>>> fork_exit+0x9a fork_trampoline+= 0xe=0A>>>>>>> 918 100627 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> slee= pq_wait+0x3a sleeplk+0x15d __lockmgr_args+0x902=0A>>>>>>> vop_stdlock+0x3= c VOP_LOCK1_APV+0xab _vn_lock+0x43=0A>>>>>>> zfs_fhtovp+0x38d=0A>>>>>>> n= fsvno_fhtovp+0x7c nfsd_fhtovp+0xc8 nfsrvd_dorpc+0x917=0A>>>>>>> nfssvc_pr= ogram+0x554 svc_run_internal+0xc77=0A>>>>>>> svc_thread_start+0xb=0A>>>>>= >> fork_exit+0x9a fork_trampoline+0xe=0A>>>>>>> 918 100628 nfsd nfsd: ser= vice mi_switch+0xe1=0A>>>>>>> sleepq_wait+0x3a sleeplk+0x15d __lockmgr_ar= gs+0x902=0A>>>>>>> vop_stdlock+0x3c VOP_LOCK1_APV+0xab _vn_lock+0x43=0A>>= >>>>> zfs_fhtovp+0x38d=0A>>>>>>> nfsvno_fhtovp+0x7c nfsd_fhtovp+0xc8 nfsr= vd_dorpc+0x917=0A>>>>>>> nfssvc_program+0x554 svc_run_internal+0xc77=0A>>= >>>>> svc_thread_start+0xb=0A>>>>>>> fork_exit+0x9a fork_trampoline+0xe= =0A>>>>>>> 918 100629 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_= wait+0x3a sleeplk+0x15d __lockmgr_args+0x902=0A>>>>>>> vop_stdlock+0x3c V= OP_LOCK1_APV+0xab _vn_lock+0x43=0A>>>>>>> zfs_fhtovp+0x38d=0A>>>>>>> nfsv= no_fhtovp+0x7c nfsd_fhtovp+0xc8 nfsrvd_dorpc+0x917=0A>>>>>>> nfssvc_progr= am+0x554 svc_run_internal+0xc77=0A>>>>>>> svc_thread_start+0xb=0A>>>>>>> = fork_exit+0x9a fork_trampoline+0xe=0A>>>>>>> 918 100630 nfsd nfsd: servic= e mi_switch+0xe1=0A>>>>>>> sleepq_wait+0x3a sleeplk+0x15d __lockmgr_args+= 0x902=0A>>>>>>> vop_stdlock+0x3c VOP_LOCK1_APV+0xab _vn_lock+0x43=0A>>>>>= >> zfs_fhtovp+0x38d=0A>>>>>>> nfsvno_fhtovp+0x7c nfsd_fhtovp+0xc8 nfsrvd_= dorpc+0x917=0A>>>>>>> nfssvc_program+0x554 svc_run_internal+0xc77=0A>>>>>= >> svc_thread_start+0xb=0A>>>>>>> fork_exit+0x9a fork_trampoline+0xe=0A>>= >>>>> 918 100631 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_wait+= 0x3a sleeplk+0x15d __lockmgr_args+0x902=0A>>>>>>> vop_stdlock+0x3c VOP_LO= CK1_APV+0xab _vn_lock+0x43=0A>>>>>>> zfs_fhtovp+0x38d=0A>>>>>>> nfsvno_fh= tovp+0x7c nfsd_fhtovp+0xc8 nfsrvd_dorpc+0x917=0A>>>>>>> nfssvc_program+0x= 554 svc_run_internal+0xc77=0A>>>>>>> svc_thread_start+0xb=0A>>>>>>> fork_= exit+0x9a fork_trampoline+0xe=0A>>>>>>> 918 100632 nfsd nfsd: service mi_= switch+0xe1=0A>>>>>>> sleepq_wait+0x3a sleeplk+0x15d __lockmgr_args+0x902= =0A>>>>>>> vop_stdlock+0x3c VOP_LOCK1_APV+0xab _vn_lock+0x43=0A>>>>>>> zf= s_fhtovp+0x38d=0A>>>>>>> nfsvno_fhtovp+0x7c nfsd_fhtovp+0xc8 nfsrvd_dorpc= +0x917=0A>>>>>>> nfssvc_program+0x554 svc_run_internal+0xc77=0A>>>>>>> sv= c_thread_start+0xb=0A>>>>>>> fork_exit+0x9a fork_trampoline+0xe=0A>>>>>>>= 918 100633 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_wait+0x3a = sleeplk+0x15d __lockmgr_args+0x902=0A>>>>>>> vop_stdlock+0x3c VOP_LOCK1_A= PV+0xab _vn_lock+0x43=0A>>>>>>> zfs_fhtovp+0x38d=0A>>>>>>> nfsvno_fhtovp+= 0x7c nfsd_fhtovp+0xc8 nfsrvd_dorpc+0x917=0A>>>>>>> nfssvc_program+0x554 s= vc_run_internal+0xc77=0A>>>>>>> svc_thread_start+0xb=0A>>>>>>> fork_exit+= 0x9a fork_trampoline+0xe=0A>>>>>>> 918 100634 nfsd nfsd: service mi_switc= h+0xe1=0A>>>>>>> sleepq_wait+0x3a sleeplk+0x15d __lockmgr_args+0x902=0A>>= >>>>> vop_stdlock+0x3c VOP_LOCK1_APV+0xab _vn_lock+0x43=0A>>>>>>> zfs_fht= ovp+0x38d=0A>>>>>>> nfsvno_fhtovp+0x7c nfsd_fhtovp+0xc8 nfsrvd_dorpc+0x91= 7=0A>>>>>>> nfssvc_program+0x554 svc_run_internal+0xc77=0A>>>>>>> svc_thr= ead_start+0xb=0A>>>>>>> fork_exit+0x9a fork_trampoline+0xe=0A>>>>>>> 918 = 100635 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_wait+0x3a sleep= lk+0x15d __lockmgr_args+0x902=0A>>>>>>> vop_stdlock+0x3c VOP_LOCK1_APV+0x= ab _vn_lock+0x43=0A>>>>>>> zfs_fhtovp+0x38d=0A>>>>>>> nfsvno_fhtovp+0x7c = nfsd_fhtovp+0xc8 nfsrvd_dorpc+0x917=0A>>>>>>> nfssvc_program+0x554 svc_ru= n_internal+0xc77=0A>>>>>>> svc_thread_start+0xb=0A>>>>>>> fork_exit+0x9a = fork_trampoline+0xe=0A>>>>>>> 918 100636 nfsd nfsd: service mi_switch+0xe= 1=0A>>>>>>> sleepq_wait+0x3a sleeplk+0x15d __lockmgr_args+0x902=0A>>>>>>>= vop_stdlock+0x3c VOP_LOCK1_APV+0xab _vn_lock+0x43=0A>>>>>>> zfs_fhtovp+0= x38d=0A>>>>>>> nfsvno_fhtovp+0x7c nfsd_fhtovp+0xc8 nfsrvd_dorpc+0x917=0A>= >>>>>> nfssvc_program+0x554 svc_run_internal+0xc77=0A>>>>>>> svc_thread_s= tart+0xb=0A>>>>>>> fork_exit+0x9a fork_trampoline+0xe=0A>>>>>>> 918 10063= 7 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_wait+0x3a sleeplk+0x= 15d __lockmgr_args+0x902=0A>>>>>>> vop_stdlock+0x3c VOP_LOCK1_APV+0xab _v= n_lock+0x43=0A>>>>>>> zfs_fhtovp+0x38d=0A>>>>>>> nfsvno_fhtovp+0x7c nfsd_= fhtovp+0xc8 nfsrvd_dorpc+0x917=0A>>>>>>> nfssvc_program+0x554 svc_run_int= ernal+0xc77=0A>>>>>>> svc_thread_start+0xb=0A>>>>>>> fork_exit+0x9a fork_= trampoline+0xe=0A>>>>>>> 918 100638 nfsd nfsd: service mi_switch+0xe1=0A>= >>>>>> sleepq_wait+0x3a sleeplk+0x15d __lockmgr_args+0x902=0A>>>>>>> vop_= stdlock+0x3c VOP_LOCK1_APV+0xab _vn_lock+0x43=0A>>>>>>> zfs_fhtovp+0x38d= =0A>>>>>>> nfsvno_fhtovp+0x7c nfsd_fhtovp+0xc8 nfsrvd_dorpc+0x917=0A>>>>>= >> nfssvc_program+0x554 svc_run_internal+0xc77=0A>>>>>>> svc_thread_start= +0xb=0A>>>>>>> fork_exit+0x9a fork_trampoline+0xe=0A>>>>>>> 918 100639 nf= sd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_wait+0x3a sleeplk+0x15d = __lockmgr_args+0x902=0A>>>>>>> vop_stdlock+0x3c VOP_LOCK1_APV+0xab _vn_lo= ck+0x43=0A>>>>>>> zfs_fhtovp+0x38d=0A>>>>>>> nfsvno_fhtovp+0x7c nfsd_fhto= vp+0xc8 nfsrvd_dorpc+0x917=0A>>>>>>> nfssvc_program+0x554 svc_run_interna= l+0xc77=0A>>>>>>> svc_thread_start+0xb=0A>>>>>>> fork_exit+0x9a fork_tram= poline+0xe=0A>>>>>>> 918 100640 nfsd nfsd: service mi_switch+0xe1=0A>>>>>= >> sleepq_wait+0x3a sleeplk+0x15d __lockmgr_args+0x902=0A>>>>>>> vop_stdl= ock+0x3c VOP_LOCK1_APV+0xab _vn_lock+0x43=0A>>>>>>> zfs_fhtovp+0x38d=0A>>= >>>>> nfsvno_fhtovp+0x7c nfsd_fhtovp+0xc8 nfsrvd_dorpc+0x917=0A>>>>>>> nf= ssvc_program+0x554 svc_run_internal+0xc77=0A>>>>>>> svc_thread_start+0xb= =0A>>>>>>> fork_exit+0x9a fork_trampoline+0xe=0A>>>>>>> 918 100641 nfsd n= fsd: service mi_switch+0xe1=0A>>>>>>> sleepq_wait+0x3a sleeplk+0x15d __lo= ckmgr_args+0x902=0A>>>>>>> vop_stdlock+0x3c VOP_LOCK1_APV+0xab _vn_lock+0= x43=0A>>>>>>> zfs_fhtovp+0x38d=0A>>>>>>> nfsvno_fhtovp+0x7c nfsd_fhtovp+0= xc8 nfsrvd_dorpc+0x917=0A>>>>>>> nfssvc_program+0x554 svc_run_internal+0x= c77=0A>>>>>>> svc_thread_start+0xb=0A>>>>>>> fork_exit+0x9a fork_trampoli= ne+0xe=0A>>>>>>> 918 100642 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> s= leepq_wait+0x3a sleeplk+0x15d __lockmgr_args+0x902=0A>>>>>>> vop_stdlock+= 0x3c VOP_LOCK1_APV+0xab _vn_lock+0x43=0A>>>>>>> zfs_fhtovp+0x38d=0A>>>>>>= > nfsvno_fhtovp+0x7c nfsd_fhtovp+0xc8 nfsrvd_dorpc+0x917=0A>>>>>>> nfssvc= _program+0x554 svc_run_internal+0xc77=0A>>>>>>> svc_thread_start+0xb=0A>>= >>>>> fork_exit+0x9a fork_trampoline+0xe=0A>>>>>>> 918 100643 nfsd nfsd: = service mi_switch+0xe1=0A>>>>>>> sleepq_wait+0x3a sleeplk+0x15d __lockmgr= _args+0x902=0A>>>>>>> vop_stdlock+0x3c VOP_LOCK1_APV+0xab _vn_lock+0x43= =0A>>>>>>> zfs_fhtovp+0x38d=0A>>>>>>> nfsvno_fhtovp+0x7c nfsd_fhtovp+0xc8= nfsrvd_dorpc+0x917=0A>>>>>>> nfssvc_program+0x554 svc_run_internal+0xc77= =0A>>>>>>> svc_thread_start+0xb=0A>>>>>>> fork_exit+0x9a fork_trampoline+= 0xe=0A>>>>>>> 918 100644 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> slee= pq_wait+0x3a sleeplk+0x15d __lockmgr_args+0x902=0A>>>>>>> vop_stdlock+0x3= c VOP_LOCK1_APV+0xab _vn_lock+0x43=0A>>>>>>> zfs_fhtovp+0x38d=0A>>>>>>> n= fsvno_fhtovp+0x7c nfsd_fhtovp+0xc8 nfsrvd_dorpc+0x917=0A>>>>>>> nfssvc_pr= ogram+0x554 svc_run_internal+0xc77=0A>>>>>>> svc_thread_start+0xb=0A>>>>>= >> fork_exit+0x9a fork_trampoline+0xe=0A>>>>>>> 918 100645 nfsd nfsd: ser= vice mi_switch+0xe1=0A>>>>>>> sleepq_wait+0x3a sleeplk+0x15d __lockmgr_ar= gs+0x902=0A>>>>>>> vop_stdlock+0x3c VOP_LOCK1_APV+0xab _vn_lock+0x43=0A>>= >>>>> zfs_fhtovp+0x38d=0A>>>>>>> nfsvno_fhtovp+0x7c nfsd_fhtovp+0xc8 nfsr= vd_dorpc+0x917=0A>>>>>>> nfssvc_program+0x554 svc_run_internal+0xc77=0A>>= >>>>> svc_thread_start+0xb=0A>>>>>>> fork_exit+0x9a fork_trampoline+0xe= =0A>>>>>>> 918 100646 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_= wait+0x3a sleeplk+0x15d __lockmgr_args+0x902=0A>>>>>>> vop_stdlock+0x3c V= OP_LOCK1_APV+0xab _vn_lock+0x43=0A>>>>>>> zfs_fhtovp+0x38d=0A>>>>>>> nfsv= no_fhtovp+0x7c nfsd_fhtovp+0xc8 nfsrvd_dorpc+0x917=0A>>>>>>> nfssvc_progr= am+0x554 svc_run_internal+0xc77=0A>>>>>>> svc_thread_start+0xb=0A>>>>>>> = fork_exit+0x9a fork_trampoline+0xe=0A>>>>>>> 918 100647 nfsd nfsd: servic= e mi_switch+0xe1=0A>>>>>>> sleepq_wait+0x3a sleeplk+0x15d __lockmgr_args+= 0x902=0A>>>>>>> vop_stdlock+0x3c VOP_LOCK1_APV+0xab _vn_lock+0x43=0A>>>>>= >> zfs_fhtovp+0x38d=0A>>>>>>> nfsvno_fhtovp+0x7c nfsd_fhtovp+0xc8 nfsrvd_= dorpc+0x917=0A>>>>>>> nfssvc_program+0x554 svc_run_internal+0xc77=0A>>>>>= >> svc_thread_start+0xb=0A>>>>>>> fork_exit+0x9a fork_trampoline+0xe=0A>>= >>>>> 918 100648 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_wait+= 0x3a sleeplk+0x15d __lockmgr_args+0x902=0A>>>>>>> vop_stdlock+0x3c VOP_LO= CK1_APV+0xab _vn_lock+0x43=0A>>>>>>> zfs_fhtovp+0x38d=0A>>>>>>> nfsvno_fh= tovp+0x7c nfsd_fhtovp+0xc8 nfsrvd_dorpc+0x917=0A>>>>>>> nfssvc_program+0x= 554 svc_run_internal+0xc77=0A>>>>>>> svc_thread_start+0xb=0A>>>>>>> fork_= exit+0x9a fork_trampoline+0xe=0A>>>>>>> 918 100649 nfsd nfsd: service mi_= switch+0xe1=0A>>>>>>> sleepq_wait+0x3a sleeplk+0x15d __lockmgr_args+0x902= =0A>>>>>>> vop_stdlock+0x3c VOP_LOCK1_APV+0xab _vn_lock+0x43=0A>>>>>>> zf= s_fhtovp+0x38d=0A>>>>>>> nfsvno_fhtovp+0x7c nfsd_fhtovp+0xc8 nfsrvd_dorpc= +0x917=0A>>>>>>> nfssvc_program+0x554 svc_run_internal+0xc77=0A>>>>>>> sv= c_thread_start+0xb=0A>>>>>>> fork_exit+0x9a fork_trampoline+0xe=0A>>>>>>>= 918 100650 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_wait+0x3a = sleeplk+0x15d __lockmgr_args+0x902=0A>>>>>>> vop_stdlock+0x3c VOP_LOCK1_A= PV+0xab _vn_lock+0x43=0A>>>>>>> zfs_fhtovp+0x38d=0A>>>>>>> nfsvno_fhtovp+= 0x7c nfsd_fhtovp+0xc8 nfsrvd_dorpc+0x917=0A>>>>>>> nfssvc_program+0x554 s= vc_run_internal+0xc77=0A>>>>>>> svc_thread_start+0xb=0A>>>>>>> fork_exit+= 0x9a fork_trampoline+0xe=0A>>>>>>> 918 100651 nfsd nfsd: service mi_switc= h+0xe1=0A>>>>>>> sleepq_wait+0x3a sleeplk+0x15d __lockmgr_args+0x902=0A>>= >>>>> vop_stdlock+0x3c VOP_LOCK1_APV+0xab _vn_lock+0x43=0A>>>>>>> zfs_fht= ovp+0x38d=0A>>>>>>> nfsvno_fhtovp+0x7c nfsd_fhtovp+0xc8 nfsrvd_dorpc+0x91= 7=0A>>>>>>> nfssvc_program+0x554 svc_run_internal+0xc77=0A>>>>>>> svc_thr= ead_start+0xb=0A>>>>>>> fork_exit+0x9a fork_trampoline+0xe=0A>>>>>>> 918 = 100652 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_wait+0x3a sleep= lk+0x15d __lockmgr_args+0x902=0A>>>>>>> vop_stdlock+0x3c VOP_LOCK1_APV+0x= ab _vn_lock+0x43=0A>>>>>>> zfs_fhtovp+0x38d=0A>>>>>>> nfsvno_fhtovp+0x7c = nfsd_fhtovp+0xc8 nfsrvd_dorpc+0x917=0A>>>>>>> nfssvc_program+0x554 svc_ru= n_internal+0xc77=0A>>>>>>> svc_thread_start+0xb=0A>>>>>>> fork_exit+0x9a = fork_trampoline+0xe=0A>>>>>>> 918 100653 nfsd nfsd: service mi_switch+0xe= 1=0A>>>>>>> sleepq_wait+0x3a sleeplk+0x15d __lockmgr_args+0x902=0A>>>>>>>= vop_stdlock+0x3c VOP_LOCK1_APV+0xab _vn_lock+0x43=0A>>>>>>> zfs_fhtovp+0= x38d=0A>>>>>>> nfsvno_fhtovp+0x7c nfsd_fhtovp+0xc8 nfsrvd_dorpc+0x917=0A>= >>>>>> nfssvc_program+0x554 svc_run_internal+0xc77=0A>>>>>>> svc_thread_s= tart+0xb=0A>>>>>>> fork_exit+0x9a fork_trampoline+0xe=0A>>>>>>> 918 10065= 4 nfsd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_wait+0x3a sleeplk+0x= 15d __lockmgr_args+0x902=0A>>>>>>> vop_stdlock+0x3c VOP_LOCK1_APV+0xab _v= n_lock+0x43=0A>>>>>>> zfs_fhtovp+0x38d=0A>>>>>>> nfsvno_fhtovp+0x7c nfsd_= fhtovp+0xc8 nfsrvd_dorpc+0x917=0A>>>>>>> nfssvc_program+0x554 svc_run_int= ernal+0xc77=0A>>>>>>> svc_thread_start+0xb=0A>>>>>>> fork_exit+0x9a fork_= trampoline+0xe=0A>>>>>>> 918 100655 nfsd nfsd: service mi_switch+0xe1=0A>= >>>>>> sleepq_wait+0x3a sleeplk+0x15d __lockmgr_args+0x902=0A>>>>>>> vop_= stdlock+0x3c VOP_LOCK1_APV+0xab _vn_lock+0x43=0A>>>>>>> zfs_fhtovp+0x38d= =0A>>>>>>> nfsvno_fhtovp+0x7c nfsd_fhtovp+0xc8 nfsrvd_dorpc+0x917=0A>>>>>= >> nfssvc_program+0x554 svc_run_internal+0xc77=0A>>>>>>> svc_thread_start= +0xb=0A>>>>>>> fork_exit+0x9a fork_trampoline+0xe=0A>>>>>>> 918 100656 nf= sd nfsd: service mi_switch+0xe1=0A>>>>>>> sleepq_wait+0x3a sleeplk+0x15d = __lockmgr_args+0x902=0A>>>>>>> vop_stdlock+0x3c VOP_LOCK1_APV+0xab _vn_lo= ck+0x43=0A>>>>>>> zfs_fhtovp+0x38d=0A>>>>>>> nfsvno_fhtovp+0x7c nfsd_fhto= vp+0xc8 nfsrvd_dorpc+0x917=0A>>>>>>> nfssvc_program+0x554 svc_run_interna= l+0xc77=0A>>>>>>> svc_thread_start+0xb=0A>>>>>>> fork_exit+0x9a fork_tram= poline+0xe=0A>>>>>>> 918 100657 nfsd nfsd: service mi_switch+0xe1=0A>>>>>= >> sleepq_wait+0x3a sleeplk+0x15d __lockmgr_args+0x902=0A>>>>>>> vop_stdl= ock+0x3c VOP_LOCK1_APV+0xab _vn_lock+0x43=0A>>>>>>> zfs_fhtovp+0x38d=0A>>= >>>>> nfsvno_fhtovp+0x7c nfsd_fhtovp+0xc8 nfsrvd_dorpc+0x917=0A>>>>>>> nf= ssvc_program+0x554 svc_run_internal+0xc77=0A>>>>>>> svc_thread_start+0xb= =0A>>>>>>> fork_exit+0x9a fork_trampoline+0xe=0A>>>>>>> 918 100658 nfsd n= fsd: service mi_switch+0xe1=0A>>>>>>> sleepq_wait+0x3a sleeplk+0x15d __lo= ckmgr_args+0x902=0A>>>>>>> vop_stdlock+0x3c VOP_LOCK1_APV+0xab _vn_lock+0= x43=0A>>>>>>> zfs_fhtovp+0x38d=0A>>>>>>> nfsvno_fhtovp+0x7c nfsd_fhtovp+0= xc8 nfsrvd_dorpc+0x917=0A>>>>>>> nfssvc_program+0x554 svc_run_internal+0x= c77=0A>>>>>>> svc_thread_start+0xb=0A>>>>>>> fork_exit+0x9a fork_trampoli= ne+0xe=0A>>>>>>> =0A>>>>>>> Lo=C3=AFc Blot,=0A>>>>>>> UNIX Systems, Netwo= rk and Security Engineer=0A>>>>>>> http://www.unix-experience.fr=0A>>>>>>= > =0A>>>>>>> 15 d=C3=A9cembre 2014 13:29 "Lo=C3=AFc Blot"=0A>>>>>>> =0A>>>>>>> a=0A>>>>>>> =C3=A9crit:=0A>>>>>>> =0A= >>>>>>> Hmmm...=0A>>>>>>> now i'm experiencing a deadlock.=0A>>>>>>> =0A>= >>>>>> 0 918 915 0 21 0 12352 3372 zfs D - 1:48.64 nfsd: server=0A>>>>>>>= (nfsd)=0A>>>>>>> =0A>>>>>>> the only issue was to reboot the server, but= after rebooting=0A>>>>>>> deadlock arrives a second time when i=0A>>>>>>= > start my jails over NFS.=0A>>>>>>> =0A>>>>>>> Regards,=0A>>>>>>> =0A>>>= >>>> Lo=C3=AFc Blot,=0A>>>>>>> UNIX Systems, Network and Security Enginee= r=0A>>>>>>> http://www.unix-experience.fr=0A>>>>>>> =0A>>>>>>> 15 d=C3=A9= cembre 2014 10:07 "Lo=C3=AFc Blot"=0A>>>>>>> =0A>>>>>>> a=0A>>>>>>> =C3=A9crit:=0A>>>>>>> =0A>>>>>>> Hi Rick,=0A>>>>= >>> after talking with my N+1, NFSv4 is required on our=0A>>>>>>> infrast= ructure.=0A>>>>>>> I tried to upgrade NFSv4+ZFS=0A>>>>>>> server from 9.3= to 10.1, i hope this will resolve some=0A>>>>>>> issues...=0A>>>>>>> =0A= >>>>>>> Regards,=0A>>>>>>> =0A>>>>>>> Lo=C3=AFc Blot,=0A>>>>>>> UNIX Syst= ems, Network and Security Engineer=0A>>>>>>> http://www.unix-experience.f= r=0A>>>>>>> =0A>>>>>>> 10 d=C3=A9cembre 2014 15:36 "Lo=C3=AFc Blot"=0A>>>= >>>> =0A>>>>>>> a=0A>>>>>>> =C3=A9crit:=0A>= >>>>>> =0A>>>>>>> Hi Rick,=0A>>>>>>> thanks for your suggestion.=0A>>>>>>= > For my locking bug, rpc.lockd is stucked in rpcrecv state on=0A>>>>>>> = the=0A>>>>>>> server. kill -9 doesn't affect the=0A>>>>>>> process, it's = blocked.... (State: Ds)=0A>>>>>>> =0A>>>>>>> for the performances=0A>>>>>= >> =0A>>>>>>> NFSv3: 60Mbps=0A>>>>>>> NFSv4: 45Mbps=0A>>>>>>> Regards,=0A= >>>>>>> =0A>>>>>>> Lo=C3=AFc Blot,=0A>>>>>>> UNIX Systems, Network and Se= curity Engineer=0A>>>>>>> http://www.unix-experience.fr=0A>>>>>>> =0A>>>>= >>> 10 d=C3=A9cembre 2014 13:56 "Rick Macklem" =0A>= >>>>>> a=0A>>>>>>> =C3=A9crit:=0A>>>>>>> =0A>>>>>>> Loic Blot wrote:=0A>>= >>>>> =0A>>>>>>>> Hi Rick,=0A>>>>>>>> I'm trying NFSv3.=0A>>>>>>>> Some j= ails are starting very well but now i have an issue=0A>>>>>>>> with=0A>>>= >>>>> lockd=0A>>>>>>>> after some minutes:=0A>>>>>>>> =0A>>>>>>>> nfs ser= ver 10.10.X.8:/jails: lockd not responding=0A>>>>>>>> nfs server 10.10.X.= 8:/jails lockd is alive again=0A>>>>>>>> =0A>>>>>>>> I look at mbuf, but = i seems there is no problem.=0A>>>>>>> =0A>>>>>>> Well, if you need locks= to be visible across multiple=0A>>>>>>> clients,=0A>>>>>>> then=0A>>>>>>= > I'm afraid you are stuck with using NFSv4 and the=0A>>>>>>> performance= =0A>>>>>>> you=0A>>>>>>> get=0A>>>>>>> from it. (There is no way to do fi= le handle affinity for=0A>>>>>>> NFSv4=0A>>>>>>> because=0A>>>>>>> the re= ad and write ops are buried in the compound RPC and=0A>>>>>>> not=0A>>>>>= >> easily=0A>>>>>>> recognized.)=0A>>>>>>> =0A>>>>>>> If the locks don't = need to be visible across multiple=0A>>>>>>> clients,=0A>>>>>>> I'd=0A>>>= >>>> suggest trying the "nolockd" option with nfsv3.=0A>>>>>>> =0A>>>>>>>= > Here is my rc.conf on server:=0A>>>>>>>> =0A>>>>>>>> nfs_server_enable= =3D"YES"=0A>>>>>>>> nfsv4_server_enable=3D"YES"=0A>>>>>>>> nfsuserd_enabl= e=3D"YES"=0A>>>>>>>> nfsd_server_flags=3D"-u -t -n 256"=0A>>>>>>>> mountd= _enable=3D"YES"=0A>>>>>>>> mountd_flags=3D"-r"=0A>>>>>>>> nfsuserd_flags= =3D"-usertimeout 0 -force 20"=0A>>>>>>>> rpcbind_enable=3D"YES"=0A>>>>>>>= > rpc_lockd_enable=3D"YES"=0A>>>>>>>> rpc_statd_enable=3D"YES"=0A>>>>>>>>= =0A>>>>>>>> Here is the client:=0A>>>>>>>> =0A>>>>>>>> nfsuserd_enable= =3D"YES"=0A>>>>>>>> nfsuserd_flags=3D"-usertimeout 0 -force 20"=0A>>>>>>>= > nfscbd_enable=3D"YES"=0A>>>>>>>> rpc_lockd_enable=3D"YES"=0A>>>>>>>> rp= c_statd_enable=3D"YES"=0A>>>>>>>> =0A>>>>>>>> Have you got an idea ?=0A>>= >>>>>> =0A>>>>>>>> Regards,=0A>>>>>>>> =0A>>>>>>>> Lo=C3=AFc Blot,=0A>>>>= >>>> UNIX Systems, Network and Security Engineer=0A>>>>>>>> http://www.un= ix-experience.fr=0A>>>>>>>> =0A>>>>>>>> 9 d=C3=A9cembre 2014 04:31 "Rick = Macklem" =0A>>>>>>>> a=0A>>>>>>>> =C3=A9crit:=0A>>>= >>>>>> Loic Blot wrote:=0A>>>>>>>>> =0A>>>>>>>>>> Hi rick,=0A>>>>>>>>>> = =0A>>>>>>>>>> I waited 3 hours (no lag at jail launch) and now I do:=0A>>= >>>>>>>> sysrc=0A>>>>>>>>>> memcached_flags=3D"-v -m 512"=0A>>>>>>>>>> Co= mmand was very very slow...=0A>>>>>>>>>> =0A>>>>>>>>>> Here is a dd over = NFS:=0A>>>>>>>>>> =0A>>>>>>>>>> 601062912 bytes transferred in 21.060679 = secs (28539579=0A>>>>>>>>>> bytes/sec)=0A>>>>>>>>> =0A>>>>>>>>> Can you t= ry the same read using an NFSv3 mount?=0A>>>>>>>>> (If it runs much faste= r, you have probably been bitten by=0A>>>>>>>>> the=0A>>>>>>>>> ZFS=0A>>>= >>>>>> "sequential vs random" read heuristic which I've been told=0A>>>>>= >>>> things=0A>>>>>>>>> NFS is doing "random" reads without file handle a= ffinity.=0A>>>>>>>>> File=0A>>>>>>>>> handle affinity is very hard to do = for NFSv4, so it isn't=0A>>>>>>>>> done.)=0A>>>>>>> =0A>>>>>>> I was actu= ally suggesting that you try the "dd" over nfsv3=0A>>>>>>> to=0A>>>>>>> s= ee=0A>>>>>>> how=0A>>>>>>> the performance compared with nfsv4. If you do= that, please=0A>>>>>>> post=0A>>>>>>> the=0A>>>>>>> comparable results.= =0A>>>>>>> =0A>>>>>>> Someday I would like to try and get ZFS's sequentia= l vs=0A>>>>>>> random=0A>>>>>>> read=0A>>>>>>> heuristic modified and any= info on what difference in=0A>>>>>>> performance=0A>>>>>>> that=0A>>>>>>= > might make for NFS would be useful.=0A>>>>>>> =0A>>>>>>> rick=0A>>>>>>>= =0A>>>>>>> rick=0A>>>>>>> =0A>>>>>>> This is quite slow...=0A>>>>>>> =0A= >>>>>>> You can found some nfsstat below (command isn't finished=0A>>>>>>= > yet)=0A>>>>>>> =0A>>>>>>> nfsstat -c -w 1=0A>>>>>>> =0A>>>>>>> GtAttr L= ookup Rdlink Read Write Rename Access Rddir=0A>>>>>>> 0 0 0 0 0 0 0 0=0A>= >>>>>> 4 0 0 0 0 0 16 0=0A>>>>>>> 2 0 0 0 0 0 17 0=0A>>>>>>> 0 0 0 0 0 0 = 0 0=0A>>>>>>> 0 0 0 0 0 0 0 0=0A>>>>>>> 0 0 0 0 0 0 0 0=0A>>>>>>> 0 0 0 0= 0 0 0 0=0A>>>>>>> 0 4 0 0 0 0 4 0=0A>>>>>>> 0 0 0 0 0 0 0 0=0A>>>>>>> 0 = 0 0 0 0 0 0 0=0A>>>>>>> 0 0 0 0 0 0 0 0=0A>>>>>>> 0 0 0 0 0 0 0 0=0A>>>>>= >> 4 0 0 0 0 0 3 0=0A>>>>>>> 0 0 0 0 0 0 3 0=0A>>>>>>> 37 10 0 8 0 0 14 1= =0A>>>>>>> 18 16 0 4 1 2 4 0=0A>>>>>>> 78 91 0 82 6 12 30 0=0A>>>>>>> 19 = 18 0 2 2 4 2 0=0A>>>>>>> 0 0 0 0 2 0 0 0=0A>>>>>>> 0 0 0 0 0 0 0 0=0A>>>>= >>> GtAttr Lookup Rdlink Read Write Rename Access Rddir=0A>>>>>>> 0 0 0 0= 0 0 0 0=0A>>>>>>> 0 0 0 0 0 0 0 0=0A>>>>>>> 0 0 0 0 0 0 0 0=0A>>>>>>> 0 = 1 0 0 0 0 1 0=0A>>>>>>> 4 6 0 0 6 0 3 0=0A>>>>>>> 2 0 0 0 0 0 0 0=0A>>>>>= >> 0 0 0 0 0 0 0 0=0A>>>>>>> 1 0 0 0 0 0 0 0=0A>>>>>>> 0 0 0 0 1 0 0 0=0A= >>>>>>> 0 0 0 0 0 0 0 0=0A>>>>>>> 0 0 0 0 0 0 0 0=0A>>>>>>> 0 0 0 0 0 0 0= 0=0A>>>>>>> 0 0 0 0 0 0 0 0=0A>>>>>>> 0 0 0 0 0 0 0 0=0A>>>>>>> 0 0 0 0 = 0 0 0 0=0A>>>>>>> 0 0 0 0 0 0 0 0=0A>>>>>>> 0 0 0 0 0 0 0 0=0A>>>>>>> 6 1= 08 0 0 0 0 0 0=0A>>>>>>> 0 0 0 0 0 0 0 0=0A>>>>>>> 0 0 0 0 0 0 0 0=0A>>>>= >>> GtAttr Lookup Rdlink Read Write Rename Access Rddir=0A>>>>>>> 0 0 0 0= 0 0 0 0=0A>>>>>>> 0 0 0 0 0 0 0 0=0A>>>>>>> 0 0 0 0 0 0 0 0=0A>>>>>>> 0 = 0 0 0 0 0 0 0=0A>>>>>>> 0 0 0 0 0 0 0 0=0A>>>>>>> 0 0 0 0 0 0 0 0=0A>>>>>= >> 0 0 0 0 0 0 0 0=0A>>>>>>> 98 54 0 86 11 0 25 0=0A>>>>>>> 36 24 0 39 25= 0 10 1=0A>>>>>>> 67 8 0 63 63 0 41 0=0A>>>>>>> 34 0 0 35 34 0 0 0=0A>>>>= >>> 75 0 0 75 77 0 0 0=0A>>>>>>> 34 0 0 35 35 0 0 0=0A>>>>>>> 75 0 0 74 7= 6 0 0 0=0A>>>>>>> 33 0 0 34 33 0 0 0=0A>>>>>>> 0 0 0 0 5 0 0 0=0A>>>>>>> = 0 0 0 0 0 0 6 0=0A>>>>>>> 11 0 0 0 0 0 11 0=0A>>>>>>> 0 0 0 0 0 0 0 0=0A>= >>>>>> 0 17 0 0 0 0 1 0=0A>>>>>>> GtAttr Lookup Rdlink Read Write Rename = Access Rddir=0A>>>>>>> 4 5 0 0 0 0 12 0=0A>>>>>>> 2 0 0 0 0 0 26 0=0A>>>>= >>> 0 0 0 0 0 0 0 0=0A>>>>>>> 0 0 0 0 0 0 0 0=0A>>>>>>> 0 0 0 0 0 0 0 0= =0A>>>>>>> 0 0 0 0 0 0 0 0=0A>>>>>>> 0 0 0 0 0 0 0 0=0A>>>>>>> 0 4 0 0 0 = 0 4 0=0A>>>>>>> 0 0 0 0 0 0 0 0=0A>>>>>>> 0 0 0 0 0 0 0 0=0A>>>>>>> 0 0 0= 0 0 0 0 0=0A>>>>>>> 4 0 0 0 0 0 2 0=0A>>>>>>> 2 0 0 0 0 0 24 0=0A>>>>>>>= 0 0 0 0 0 0 0 0=0A>>>>>>> 0 0 0 0 0 0 0 0=0A>>>>>>> 0 0 0 0 0 0 0 0=0A>>= >>>>> 0 0 0 0 0 0 0 0=0A>>>>>>> 0 0 0 0 0 0 0 0=0A>>>>>>> 0 0 0 0 0 0 0 0= =0A>>>>>>> 0 0 0 0 0 0 0 0=0A>>>>>>> GtAttr Lookup Rdlink Read Write Rena= me Access Rddir=0A>>>>>>> 0 0 0 0 0 0 0 0=0A>>>>>>> 0 0 0 0 0 0 0 0=0A>>>= >>>> 4 0 0 0 0 0 7 0=0A>>>>>>> 2 1 0 0 0 0 1 0=0A>>>>>>> 0 0 0 0 2 0 0 0= =0A>>>>>>> 0 0 0 0 0 0 0 0=0A>>>>>>> 0 0 0 0 6 0 0 0=0A>>>>>>> 0 0 0 0 0 = 0 0 0=0A>>>>>>> 0 0 0 0 0 0 0 0=0A>>>>>>> 0 0 0 0 0 0 0 0=0A>>>>>>> 0 0 0= 0 0 0 0 0=0A>>>>>>> 0 0 0 0 0 0 0 0=0A>>>>>>> 0 0 0 0 0 0 0 0=0A>>>>>>> = 4 6 0 0 0 0 3 0=0A>>>>>>> 0 0 0 0 0 0 0 0=0A>>>>>>> 2 0 0 0 0 0 0 0=0A>>>= >>>> 0 0 0 0 0 0 0 0=0A>>>>>>> 0 0 0 0 0 0 0 0=0A>>>>>>> 0 0 0 0 0 0 0 0= =0A>>>>>>> 0 0 0 0 0 0 0 0=0A>>>>>>> GtAttr Lookup Rdlink Read Write Rena= me Access Rddir=0A>>>>>>> 0 0 0 0 0 0 0 0=0A>>>>>>> 0 0 0 0 0 0 0 0=0A>>>= >>>> 0 0 0 0 0 0 0 0=0A>>>>>>> 0 0 0 0 0 0 0 0=0A>>>>>>> 0 0 0 0 0 0 0 0= =0A>>>>>>> 4 71 0 0 0 0 0 0=0A>>>>>>> 0 1 0 0 0 0 0 0=0A>>>>>>> 2 36 0 0 = 0 0 1 0=0A>>>>>>> 0 0 0 0 0 0 0 0=0A>>>>>>> 0 0 0 0 0 0 0 0=0A>>>>>>> 0 0= 0 0 0 0 0 0=0A>>>>>>> 0 0 0 0 0 0 0 0=0A>>>>>>> 1 0 0 0 0 0 1 0=0A>>>>>>= > 0 0 0 0 0 0 0 0=0A>>>>>>> 0 0 0 0 0 0 0 0=0A>>>>>>> 79 6 0 79 79 0 2 0= =0A>>>>>>> 25 0 0 25 26 0 6 0=0A>>>>>>> 43 18 0 39 46 0 23 0=0A>>>>>>> 36= 0 0 36 36 0 31 0=0A>>>>>>> 68 1 0 66 68 0 0 0=0A>>>>>>> GtAttr Lookup Rd= link Read Write Rename Access Rddir=0A>>>>>>> 36 0 0 36 36 0 0 0=0A>>>>>>= > 48 0 0 48 49 0 0 0=0A>>>>>>> 20 0 0 20 20 0 0 0=0A>>>>>>> 0 0 0 0 0 0 0= 0=0A>>>>>>> 3 14 0 1 0 0 11 0=0A>>>>>>> 0 0 0 0 0 0 0 0=0A>>>>>>> 0 0 0 = 0 0 0 0 0=0A>>>>>>> 0 4 0 0 0 0 4 0=0A>>>>>>> 0 0 0 0 0 0 0 0=0A>>>>>>> 4= 22 0 0 0 0 16 0=0A>>>>>>> 2 0 0 0 0 0 23 0=0A>>>>>>> =0A>>>>>>> Regards,= =0A>>>>>>> =0A>>>>>>> Lo=C3=AFc Blot,=0A>>>>>>> UNIX Systems, Network and= Security Engineer=0A>>>>>>> http://www.unix-experience.fr=0A>>>>>>> =0A>= >>>>>> 8 d=C3=A9cembre 2014 09:36 "Lo=C3=AFc Blot"=0A>>>>>>> a=0A>>>>>>> =C3=A9crit:=0A>>>>>>>> Hi Rick,=0A>>>>>>>>= I stopped the jails this week-end and started it this=0A>>>>>>>> morning= ,=0A>>>>>>>> i'll=0A>>>>>>>> give you some stats this week.=0A>>>>>>>> = =0A>>>>>>>> Here is my nfsstat -m output (with your rsize/wsize=0A>>>>>>>= > tweaks)=0A>>>>>> =0A>>>>>> =0A>>>>> =0A>>>> =0A>>> =0A>> =0A> nfsv4,tcp= ,resvport,hard,cto,sec=3Dsys,acdirmin=3D3,acdirmax=3D60,acregmin=3D5,acre= gmax=3D60,nametimeo=3D60,negna=0A>>>>>> =0A>>>>>>> =0A>>>>>> =0A>>>>>> = =0A>>>>> =0A>>>> =0A>>> =0A>> =0A> etimeo=3D60,rsize=3D32768,wsize=3D3276= 8,readdirsize=3D32768,readahead=3D1,wcommitsize=3D773136,timeout=3D120,re= tra=0A>>>>>> =0A>>>>>>> s=3D2147483647=0A>>>>>>> =0A>>>>>>> On server sid= e my disks are on a raid controller which show a=0A>>>>>>> 512b=0A>>>>>>>= volume and write performances=0A>>>>>>> are very honest (dd if=3D/dev/ze= ro of=3D/jails/test.dd bs=3D4096=0A>>>>>>> count=3D100000000 =3D> 450MBps= )=0A>>>>>>> =0A>>>>>>> Regards,=0A>>>>>>> =0A>>>>>>> Lo=C3=AFc Blot,=0A>>= >>>>> UNIX Systems, Network and Security Engineer=0A>>>>>>> http://www.un= ix-experience.fr=0A>>>>>>> =0A>>>>>>> 5 d=C3=A9cembre 2014 15:14 "Rick Ma= cklem" a=0A>>>>>>> =C3=A9crit:=0A>>>>>>> =0A>>>>>>= > Loic Blot wrote:=0A>>>>>>> =0A>>>>>>> Hi,=0A>>>>>>> i'm trying to creat= e a virtualisation environment based on=0A>>>>>>> jails.=0A>>>>>>> Those = jails are stored under a big ZFS pool on a FreeBSD=0A>>>>>>> 9.3=0A>>>>>>= > which=0A>>>>>>> export a NFSv4 volume. This NFSv4 volume was mounted on= a=0A>>>>>>> big=0A>>>>>>> hypervisor (2 Xeon E5v3 + 128GB memory and 8 p= orts (but=0A>>>>>>> only 1=0A>>>>>>> was=0A>>>>>>> used at this time).=0A= >>>>>>> =0A>>>>>>> The problem is simple, my hypervisors runs 6 jails (us= ed 1%=0A>>>>>>> cpu=0A>>>>>>> and=0A>>>>>>> 10GB RAM approximatively and = less than 1MB bandwidth) and=0A>>>>>>> works=0A>>>>>>> fine at start but = the system slows down and after 2-3 days=0A>>>>>>> become=0A>>>>>>> unusa= ble. When i look at top command i see 80-100% on=0A>>>>>>> system=0A>>>>>= >> and=0A>>>>>>> commands are very very slow. Many process are tagged wit= h=0A>>>>>>> nfs_cl*.=0A>>>>>>> =0A>>>>>>> To be honest, I would expect th= e slowness to be because of=0A>>>>>>> slow=0A>>>>>>> response=0A>>>>>>> f= rom the NFSv4 server, but if you do:=0A>>>>>>> # ps axHl=0A>>>>>>> on a c= lient when it is slow and post that, it would give us=0A>>>>>>> some=0A>>= >>>>> more=0A>>>>>>> information on where the client side processes are s= itting.=0A>>>>>>> If you also do something like:=0A>>>>>>> # nfsstat -c -= w 1=0A>>>>>>> and let it run for a while, that should show you how=20many= =0A>>>>>>> RPCs=0A>>>>>>> are=0A>>>>>>> being done and which ones.=0A>>>>= >>> =0A>>>>>>> # nfsstat -m=0A>>>>>>> will show you what your mount is ac= tually using.=0A>>>>>>> The only mount option I can suggest trying is=0A>= >>>>>> "rsize=3D32768,wsize=3D32768",=0A>>>>>>> since some network enviro= nments have difficulties with 64K.=0A>>>>>>> =0A>>>>>>> There are a few t= hings you can try on the NFSv4 server side,=0A>>>>>>> if=0A>>>>>>> it=0A>= >>>>>> appears=0A>>>>>>> that the clients are generating a large RPC load= .=0A>>>>>>> - disabling the DRC cache for TCP by setting=0A>>>>>>> vfs.nf= sd.cachetcp=3D0=0A>>>>>>> - If the server is seeing a large write RPC loa= d, then=0A>>>>>>> "sync=3Ddisabled"=0A>>>>>>> might help, although it doe= s run a risk of data loss when=0A>>>>>>> the=0A>>>>>>> server=0A>>>>>>> c= rashes.=0A>>>>>>> Then there are a couple of other ZFS related things (I'= m not=0A>>>>>>> a=0A>>>>>>> ZFS=0A>>>>>>> guy,=0A>>>>>>> but these have s= hown up on the mailing lists).=0A>>>>>>> - make sure your volumes are 4K = aligned and ashift=3D12 (in=0A>>>>>>> case a=0A>>>>>>> drive=0A>>>>>>> th= at uses 4K sectors is pretending to be 512byte sectored)=0A>>>>>>> - neve= r run over 70-80% full if write performance is an=0A>>>>>>> issue=0A>>>>>= >> - use a zil on an SSD with good write performance=0A>>>>>>> =0A>>>>>>>= The only NFSv4 thing I can tell you is that it is known that=0A>>>>>>> Z= FS's=0A>>>>>>> algorithm for determining sequential vs random I/O fails f= or=0A>>>>>>> NFSv4=0A>>>>>>> during writing and this can be a performance= hit. The only=0A>>>>>>> workaround=0A>>>>>>> is to use NFSv3 mounts, sin= ce file handle affinity=0A>>>>>>> apparently=0A>>>>>>> fixes=0A>>>>>>> th= e problem and this is only done for NFSv3.=0A>>>>>>> =0A>>>>>>> rick=0A>>= >>>>> =0A>>>>>>> I saw that there are TSO issues with igb then i'm trying= to=0A>>>>>>> disable=0A>>>>>>> it with sysctl but the situation wasn't s= olved.=0A>>>>>>> =0A>>>>>>> Someone has got ideas ? I can give you more i= nformations if=0A>>>>>>> you=0A>>>>>>> need.=0A>>>>>>> =0A>>>>>>> Thanks = in advance.=0A>>>>>>> Regards,=0A>>>>>>> =0A>>>>>>> Lo=C3=AFc Blot,=0A>>>= >>>> UNIX Systems, Network and Security Engineer=0A>>>>>>> http://www.uni= x-experience.fr=0A>>>>>>> _______________________________________________= =0A>>>>>>> freebsd-fs@freebsd.org mailing list=0A>>>>>>> http://lists.fre= ebsd.org/mailman/listinfo/freebsd-fs=0A>>>>>>> To unsubscribe, send any m= ail to=0A>>>>>>> "freebsd-fs-unsubscribe@freebsd.org"=0A>>>>>>> =0A>>>>>>= > _______________________________________________=0A>>>>>>> freebsd-fs@fr= eebsd.org mailing list=0A>>>>>>> http://lists.freebsd.org/mailman/listinf= o/freebsd-fs=0A>>>>>>> To unsubscribe, send any mail to=0A>>>>>>> "freebs= d-fs-unsubscribe@freebsd.org"=0A>>>>>>> =0A>>>>>>> ______________________= _________________________=0A>>>>>>> freebsd-fs@freebsd.org mailing list= =0A>>>>>>> http://lists.freebsd.org/mailman/listinfo/freebsd-fs=0A>>>>>>>= To unsubscribe, send any mail to=0A>>>>>>> "freebsd-fs-unsubscribe@freeb= sd.org"=0A>>>>>>> =0A>>>>>>> ____________________________________________= ___=0A>>>>>>> freebsd-fs@freebsd.org mailing list=0A>>>>>>> http://lists.= freebsd.org/mailman/listinfo/freebsd-fs=0A>>>>>>> To unsubscribe, send an= y mail to=0A>>>>>>> "freebsd-fs-unsubscribe@freebsd.org"=0A>>>>>>> ______= _________________________________________=0A>>>>>>> freebsd-fs@freebsd.or= g mailing list=0A>>>>>>> http://lists.freebsd.org/mailman/listinfo/freebs= d-fs=0A>>>>>>> To unsubscribe, send any mail to=0A>>>>>>> "freebsd-fs-uns= ubscribe@freebsd.org"=0A>>>>>>> =0A>>>>>>> ______________________________= _________________=0A>>>>>>> freebsd-fs@freebsd.org mailing list=0A>>>>>>>= http://lists.freebsd.org/mailman/listinfo/freebsd-fs=0A>>>>>>> To unsubs= cribe, send any mail to=0A>>>>>>> "freebsd-fs-unsubscribe@freebsd.org"=0A= >>>>> =0A>>>>> _______________________________________________=0A>>>>> fr= eebsd-fs@freebsd.org mailing list=0A>>>>> http://lists.freebsd.org/mailma= n/listinfo/freebsd-fs=0A>>>>> To unsubscribe, send any mail to=0A>>>>> "f= reebsd-fs-unsubscribe@freebsd.org"