Loading fs/sdcardfs/inode.c +9 −10 Original line number Diff line number Diff line Loading @@ -821,8 +821,8 @@ static int sdcardfs_setattr(struct vfsmount *mnt, struct dentry *dentry, struct return err; } static int sdcardfs_fillattr(struct vfsmount *mnt, struct inode *inode, struct kstat *stat) static int sdcardfs_fillattr(struct vfsmount *mnt, struct inode *inode, struct kstat *lower_stat, struct kstat *stat) { struct sdcardfs_inode_info *info = SDCARDFS_I(inode); struct sdcardfs_inode_data *top = top_data_get(info); Loading @@ -837,12 +837,12 @@ static int sdcardfs_fillattr(struct vfsmount *mnt, stat->uid = make_kuid(&init_user_ns, top->d_uid); stat->gid = make_kgid(&init_user_ns, get_gid(mnt, top)); stat->rdev = inode->i_rdev; stat->size = i_size_read(inode); stat->atime = inode->i_atime; stat->mtime = inode->i_mtime; stat->ctime = inode->i_ctime; stat->blksize = (1 << inode->i_blkbits); stat->blocks = inode->i_blocks; stat->size = lower_stat->size; stat->atime = lower_stat->atime; stat->mtime = lower_stat->mtime; stat->ctime = lower_stat->ctime; stat->blksize = lower_stat->blksize; stat->blocks = lower_stat->blocks; data_put(top); return 0; } Loading @@ -868,8 +868,7 @@ static int sdcardfs_getattr(struct vfsmount *mnt, struct dentry *dentry, goto out; sdcardfs_copy_and_fix_attrs(d_inode(dentry), d_inode(lower_path.dentry)); err = sdcardfs_fillattr(mnt, d_inode(dentry), stat); stat->blocks = lower_stat.blocks; err = sdcardfs_fillattr(mnt, d_inode(dentry), &lower_stat, stat); out: sdcardfs_put_lower_path(dentry, &lower_path); return err; Loading Loading
fs/sdcardfs/inode.c +9 −10 Original line number Diff line number Diff line Loading @@ -821,8 +821,8 @@ static int sdcardfs_setattr(struct vfsmount *mnt, struct dentry *dentry, struct return err; } static int sdcardfs_fillattr(struct vfsmount *mnt, struct inode *inode, struct kstat *stat) static int sdcardfs_fillattr(struct vfsmount *mnt, struct inode *inode, struct kstat *lower_stat, struct kstat *stat) { struct sdcardfs_inode_info *info = SDCARDFS_I(inode); struct sdcardfs_inode_data *top = top_data_get(info); Loading @@ -837,12 +837,12 @@ static int sdcardfs_fillattr(struct vfsmount *mnt, stat->uid = make_kuid(&init_user_ns, top->d_uid); stat->gid = make_kgid(&init_user_ns, get_gid(mnt, top)); stat->rdev = inode->i_rdev; stat->size = i_size_read(inode); stat->atime = inode->i_atime; stat->mtime = inode->i_mtime; stat->ctime = inode->i_ctime; stat->blksize = (1 << inode->i_blkbits); stat->blocks = inode->i_blocks; stat->size = lower_stat->size; stat->atime = lower_stat->atime; stat->mtime = lower_stat->mtime; stat->ctime = lower_stat->ctime; stat->blksize = lower_stat->blksize; stat->blocks = lower_stat->blocks; data_put(top); return 0; } Loading @@ -868,8 +868,7 @@ static int sdcardfs_getattr(struct vfsmount *mnt, struct dentry *dentry, goto out; sdcardfs_copy_and_fix_attrs(d_inode(dentry), d_inode(lower_path.dentry)); err = sdcardfs_fillattr(mnt, d_inode(dentry), stat); stat->blocks = lower_stat.blocks; err = sdcardfs_fillattr(mnt, d_inode(dentry), &lower_stat, stat); out: sdcardfs_put_lower_path(dentry, &lower_path); return err; Loading