* [RFC] After sending NLM request, client don't wait reply, instead send FIN
@ 2010-04-14 10:19 Mi Jinlong
0 siblings, 0 replies; only message in thread
From: Mi Jinlong @ 2010-04-14 10:19 UTC (permalink / raw)
To: NFSv3 list, Trond.Myklebust, J. Bruce Fields, Chuck Lever
Hi all,
When testing NFSv3's lock service at RHEL with kernel 2.6.31, I get a
strange result like that: client send NLM request success, but don't
wait reply, instead send FIN request; server receive NLM request success,
but don't replay.
Test process:
client server
1. mount -t nfs host:/tmp /mnt (OK)
2. open file (OK)
3. lock file (OK)
4. unlokc file (OK)
5. service nfs stop (OK)
6. lock file again (hang)
7. <----------- waiting 170s ------------>
8. service nfs start (OK)
9. step6's lock return -88
And, I get the tcpdump as below:
a. step1 ~ step4: It's regular;
b. step5 ~ step8: client send portmap request, and get PROGRAM_NOT_AVAILABLE
error reply.
c. step8 ~ step9: (the important part)
c.1: portmap success.
c.2: <NLM>
client -------- SYN ---------> server
<------- SYN ACK-------
-------- ACK --------->
------ LOCK CALL ----->
<-------- ACK ---------
------- FIN ACK ------>
<------ FIN ACK -------
--------- ACK -------->
c.3: client's user space get error -88(Socket operation on non-socket).
Question:
1. c.3, user space get error -88, the LOCK request should not send success,
but as c.2 show, the client's LOCK request have send success.
Is there some reason ?
2. When traceing the kernel, I find kernel send two LOCK request at step8~9,
the first one send success(but can't get reply), the second one send fail
with error -88.
IMO, at step8~9, after server's nfs start, and client get portmap success,
there will be only one LOCK request task at client's kernel, and send only
one LOCK request.
What cause client send two LOCK request ?
Waiting for your reply.
thanks,
Mi Jinlong
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2010-04-14 10:17 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-04-14 10:19 [RFC] After sending NLM request, client don't wait reply, instead send FIN Mi Jinlong
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox