[Gluster-devel] question about nfs lookup result

jin deng cheneydeng88 at gmail.com
Wed Nov 16 12:37:56 UTC 2016


Hi all, I'm reading the code of 3.6.9 version and got a question.And I'm 
not very familiar with the code,so I have to confirm it(I checked the 
master branch,it's same with 3.6.9).
The question is about the 'lookup' operation of NFS.And i'm with this code 
flow:
nfs3_lookup (nfs3.c) ==> nfs3_fh_resolve_and_resume ==> 
nfs3_fh_resolve_root ==> nfs3_fh_resolve_resume ==> nfs3_fh_resolve_entry 
==> nfs3_fh_resolve_entry_hard.
Now enter the "nfs_entry_loc_fill" and return with -1 which means the 
"parent" not found,so we have to do hard resolve about the parent. After 
doing a hard resolve,we get into the callback 
"nfs3_fh_resolve_inode_lookup_cbk".And the callback has the following code:
 >>> memcpy (&cs->stbuf, buf, sizeof(*buf)); >>> memcpy (&cs->postparent, 
buf, sizeof(*postparent))
I think we've just done a parent resolve,how could we assign the parent 
result into the "stbuf" and "postparent".The later two should be the 
information of the child file/directory.Do i made a misunderstand?
Thanks advance for your help.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.gluster.org/pipermail/gluster-devel/attachments/20161116/6a3e66b1/attachment.html>


More information about the Gluster-devel mailing list