On Wed, Mar 2, 2016 at 4:57 PM, Goldwyn Rodrigues <rgoldwyn@xxxxxxx> wrote: > On 03/02/2016 08:43 AM, Miklos Szeredi wrote: >> Not sure how any dentry seen by NFS became associated with overlayfs. >> Through ->f_path by any chance? >> > > Yes, NFS extracts dentry from filp->f_path.dentry in fs/nfs/inode.c > nfs_open(). What can it use to evaluate dentry? Commit 4bacc9c9234c ("overlayfs: Make f_path always point to the overlay and f_inode to the underlay") broke this. Breakage only affects regular files. Accessing file->f_path.dentry->d_name (and "%pD" format etc) is OK for everything. ->d_fsdata is not OK. I have no idea what the plan was with filesystems that use f_path.dentry a separate open file for them. David? Al? My plan was to introduce a file_dentry() helper that MUST be used by filesystems to get the dentry from the file and that makes sure it's the right one (check against file_inode()). If not, then we could call into overlayfs to return the right one, similar to ->d_select_inode(), except we want to have a dentry and we want to have *a particular dentry* matching file_inode() (the file could have been copied up in the mean time). Thanks, Miklos Thanks, Miklos -- To unsubscribe from this list: send the line "unsubscribe linux-unionfs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html