Hello, Can someone please help me to validate my understading,
1. struct state_t : This represents open state for nfsv4 for given object. There is one instance per open file - PER client. A: This struct is used to find share_share, state_lock and deligation for given _owner_. 2. struct state_hdl : This maintains state per _file_. A: There is only one instance of this object, and is shared accross the clients B: This struct maintains list of locks on that file. For FSAL which dont support open file description locks, we still need to maintain one open descriptor per file accross _all_ the clients. With support_ex ops what is correct way to do it? As per VFS FSAL code, vfs_locate_state has some code to maintain one struct accross the process, I am thinking "struct state_hdl" is correct place to have 'struct vfs_fd' kind to struct to maintain one global file descriptor. (Becase it will be shared accross all the clients), Though I see "struct state_t" has "struct vfs_fd" - I think it is for FSAL which support OFD. If we append struct vfs_fd to state_hdl there should not be need to allocate extra space in alloc_state api, and find_fd should always point to global descriptor from state_hdl struct. or vfs_fd from state_t should always point to fd from state_hdl. OR its just we should not use support_ex api with FSAL which dont support OFD? Tushar ------------------------------------------------------------------------------ _______________________________________________ Nfs-ganesha-devel mailing list Nfs-ganesha-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/nfs-ganesha-devel