mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-28 14:44:10 +08:00
eCryptfs: Copy up lower inode attrs in getattr
The lower filesystem may do some type of inode revalidation during a getattr call. eCryptfs should take advantage of that by copying the lower inode attributes to the eCryptfs inode after a call to vfs_getattr() on the lower inode. I originally wrote this fix while working on eCryptfs on nfsv3 support, but discovered it also fixed an eCryptfs on ext4 nanosecond timestamp bug that was reported. https://bugs.launchpad.net/bugs/613873 Cc: <stable@kernel.org> Signed-off-by: Tyler Hicks <tyhicks@linux.vnet.ibm.com>
This commit is contained in:
parent
323ef68faf
commit
55f9cf6bba
@ -1010,6 +1010,8 @@ int ecryptfs_getattr(struct vfsmount *mnt, struct dentry *dentry,
|
||||
rc = vfs_getattr(ecryptfs_dentry_to_lower_mnt(dentry),
|
||||
ecryptfs_dentry_to_lower(dentry), &lower_stat);
|
||||
if (!rc) {
|
||||
fsstack_copy_attr_all(dentry->d_inode,
|
||||
ecryptfs_inode_to_lower(dentry->d_inode));
|
||||
generic_fillattr(dentry->d_inode, stat);
|
||||
stat->blocks = lower_stat.blocks;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user