Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

ext4: Remove ext4_get_inode_flags()

Now that all places setting inode->i_flags that should be reflected in
on-disk flags are gone, we can remove ext4_get_inode_flags() call.

Reviewed-by: Andreas Dilger <adilger@dilger.ca>
Signed-off-by: Jan Kara <jack@suse.cz>

Jan Kara 38eae95d aad6cde9

-29
-1
fs/ext4/ext4.h
··· 2476 2476 extern int ext4_punch_hole(struct inode *inode, loff_t offset, loff_t length); 2477 2477 extern int ext4_truncate_restart_trans(handle_t *, struct inode *, int nblocks); 2478 2478 extern void ext4_set_inode_flags(struct inode *); 2479 - extern void ext4_get_inode_flags(struct ext4_inode_info *); 2480 2479 extern int ext4_alloc_da_blocks(struct inode *inode); 2481 2480 extern void ext4_set_aops(struct inode *inode); 2482 2481 extern int ext4_writepage_trans_blocks(struct inode *);
-26
fs/ext4/inode.c
··· 4502 4502 S_SYNC|S_APPEND|S_IMMUTABLE|S_NOATIME|S_DIRSYNC|S_DAX); 4503 4503 } 4504 4504 4505 - /* Propagate flags from i_flags to EXT4_I(inode)->i_flags */ 4506 - void ext4_get_inode_flags(struct ext4_inode_info *ei) 4507 - { 4508 - unsigned int vfs_fl; 4509 - unsigned long old_fl, new_fl; 4510 - 4511 - do { 4512 - vfs_fl = ei->vfs_inode.i_flags; 4513 - old_fl = ei->i_flags; 4514 - new_fl = old_fl & ~(EXT4_SYNC_FL|EXT4_APPEND_FL| 4515 - EXT4_IMMUTABLE_FL|EXT4_NOATIME_FL| 4516 - EXT4_DIRSYNC_FL); 4517 - if (vfs_fl & S_SYNC) 4518 - new_fl |= EXT4_SYNC_FL; 4519 - if (vfs_fl & S_APPEND) 4520 - new_fl |= EXT4_APPEND_FL; 4521 - if (vfs_fl & S_IMMUTABLE) 4522 - new_fl |= EXT4_IMMUTABLE_FL; 4523 - if (vfs_fl & S_NOATIME) 4524 - new_fl |= EXT4_NOATIME_FL; 4525 - if (vfs_fl & S_DIRSYNC) 4526 - new_fl |= EXT4_DIRSYNC_FL; 4527 - } while (cmpxchg(&ei->i_flags, old_fl, new_fl) != old_fl); 4528 - } 4529 - 4530 4505 static blkcnt_t ext4_inode_blocks(struct ext4_inode *raw_inode, 4531 4506 struct ext4_inode_info *ei) 4532 4507 { ··· 4938 4963 if (ext4_test_inode_state(inode, EXT4_STATE_NEW)) 4939 4964 memset(raw_inode, 0, EXT4_SB(inode->i_sb)->s_inode_size); 4940 4965 4941 - ext4_get_inode_flags(ei); 4942 4966 raw_inode->i_mode = cpu_to_le16(inode->i_mode); 4943 4967 i_uid = i_uid_read(inode); 4944 4968 i_gid = i_gid_read(inode);
-2
fs/ext4/ioctl.c
··· 500 500 501 501 switch (cmd) { 502 502 case EXT4_IOC_GETFLAGS: 503 - ext4_get_inode_flags(ei); 504 503 flags = ei->i_flags & EXT4_FL_USER_VISIBLE; 505 504 return put_user(flags, (int __user *) arg); 506 505 case EXT4_IOC_SETFLAGS: { ··· 887 888 struct fsxattr fa; 888 889 889 890 memset(&fa, 0, sizeof(struct fsxattr)); 890 - ext4_get_inode_flags(ei); 891 891 fa.fsx_xflags = ext4_iflags_to_xflags(ei->i_flags & EXT4_FL_USER_VISIBLE); 892 892 893 893 if (ext4_has_feature_project(inode->i_sb)) {