Hi All,

Env:
Server: NFS Ganesha V2.2-stable x86_64, on RHEL 6.5
Client: SunOS 5.10 Generic_150400-30 sun4v sparc SUNW,SPARC-Enterprise-T5120
bash-3.2# cat /etc/release
                   Oracle Solaris 10 1/13 s10s_u11wos_24a SPARC
  Copyright (c) 1983, 2013, Oracle and/or its affiliates. All rights reserved.
                            Assembled 17 January 2013


Issue:
>From solaris client if we do rm -rf it randomly fails, Many time it
says eexists or directory is moved or linked while rm.

I was debugging this issue and following are observations. Please
guide me to patch (if already fixed) or any clue to solve this.

After debugging I found if unlink is in progress in same dir as of reading,
while(ent = readdir()) {
remove()
}

on solaris, getdents returns ENOENT on last call, rather it should get 0.
Client is sending cookie which deleted on server by last remove call.
Since there is no files left,
Ganesha gets no new node and prints error like following.

On Client:
getdents(4, 0xFFFFFFFF7E700000, 8192)           Err#2 ENOENT

On Server
2016-03-08 12:53:28 : ganesha.nfsd-30982[work-9] nfs3_readdir :F_DBG
:---> nfs3_readdir: count=8192  cookie=18411418809641280358
estimated_num_entries=120
2016-03-08 12:53:28 : ganesha.nfsd-30982[work-9] cache_inode_readdir
:F_DBG :Enter....
2016-03-08 12:53:28 : ganesha.nfsd-30982[work-9] cache_inode_access_sw
:DEBUG :INODE: DEBUG: access_type=0X84000001
2016-03-08 12:53:28 : ganesha.nfsd-30982[work-9]
cache_inode_avl_lookup_k :DEBUG :found deleted supremum (nil)
2016-03-08 12:53:28 : ganesha.nfsd-30982[work-9] cache_inode_readdir
:F_DBG :seek to cookie=18411418809641280358 fail

Thing to note here is cookie 18411418809641280358 is no more alive and
hence lookup return nil.

I tried sending CACHE_INODE_SUCCESS with 0 entries instead of
CACHE_INODE_BAD_COOKIE but that also did not worked.

What should be correct return code for readdir request with last
cookie which is deleted on server? Any one know any relevant issues
like this.

(I tried to subscribe the mailing list multiple times but I never got
confirmation email so sending message to
nfs-ganesha-devel@lists.sourceforge.net, Please route to correct alias
if not appropriate for this id.)

Thank you,
Tushar Shinde.

------------------------------------------------------------------------------
Transform Data into Opportunity.
Accelerate data analysis in your applications with
Intel Data Analytics Acceleration Library.
Click to learn more.
http://makebettercode.com/inteldaal-eval
_______________________________________________
Nfs-ganesha-devel mailing list
Nfs-ganesha-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/nfs-ganesha-devel

Reply via email to