`<div dir="ltr">I recently switched one file server from Nexenta 4 Community (still uses closed NLM I believe) to OmniOS r151012.<div><br></div><div>Immediately, users started to complain from various Linux clients that locking was failing. Most of those clients explicitly set their NFS version to 3. I finally isolated that the locking does not fail on NFS v4 and have worked on transition where possible. But presently, no NFS v3 client and successfully lock against OmniOS NFS v3 locking service. I've confirmed that the locking service is running and is present using rpcinfo, matching one for one in services from previous OpenSolaris and Illumos variants. One example from a user:</div><div><br></div><div>
<p class=""><span class="">$ strace /bin/tcsh</span></p>
<p class=""><span class="">[...]</span></p>
<p class=""><span class="">open("/home/REDACTED/.history", O_RDWR|O_CREAT, 0600) = 0</span></p>
<p class=""><span class="">dup(0) = 1</span></p>
<p class=""><span class="">dup(1) = 2</span></p>
<p class=""><span class="">dup(2) = 3</span></p>
<p class=""><span class="">dup(3) = 4</span></p>
<p class=""><span class="">dup(4) = 5</span></p>
<p class=""><span class="">dup(5) = 6</span></p>
<p class=""><span class="">close(5) = 0</span></p>
<p class=""><span class="">close(4) = 0</span></p>
<p class=""><span class="">close(3) = 0</span></p>
<p class=""><span class="">close(2) = 0</span></p>
<p class=""><span class="">close(1) = 0</span></p>
<p class=""><span class="">close(0) = 0</span></p>
<p class=""><span class="">fcntl(6, F_SETFD, FD_CLOEXEC) = 0</span></p>
<p class=""><span class="">fcntl(6, F_SETLKW, {type=F_WRLCK, whence=SEEK_SET, start=0, len=0})</span></p>
<p class=""><span class=""></span><br></p>
<p class=""><span class="">HERE fcntl hangs for 1-2 min and finally returns with "-1 ENOLCK (No</span></p>
<p class=""><span class="">locks available)"</span></p></div></div>`