ext4: improve code readability in ext4_iget()
authorLiu Song <liu.song11@zte.com.cn>
Thu, 2 Aug 2018 04:11:16 +0000 (00:11 -0400)
committerTheodore Ts'o <tytso@mit.edu>
Thu, 2 Aug 2018 04:11:16 +0000 (00:11 -0400)
Merge the duplicated complex conditions to improve code readability.

Signed-off-by: Liu Song <liu.song11@zte.com.cn>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Reviewed-by: Jiang Biao <jiang.biao2@zte.com.cn>
fs/ext4/inode.c

index 60432498acfb5c2ee00037526fbb18592cca3965..8f6ad766797403dac536d0743557898caae8256b 100644 (file)
@@ -4982,17 +4982,14 @@ struct inode *ext4_iget(struct super_block *sb, unsigned long ino)
                ret = -EFSCORRUPTED;
                goto bad_inode;
        } else if (!ext4_has_inline_data(inode)) {
-               if (ext4_test_inode_flag(inode, EXT4_INODE_EXTENTS)) {
-                       if ((S_ISREG(inode->i_mode) || S_ISDIR(inode->i_mode) ||
-                           (S_ISLNK(inode->i_mode) &&
-                            !ext4_inode_is_fast_symlink(inode))))
-                               /* Validate extent which is part of inode */
+               /* validate the block references in the inode */
+               if (S_ISREG(inode->i_mode) || S_ISDIR(inode->i_mode) ||
+                  (S_ISLNK(inode->i_mode) &&
+                   !ext4_inode_is_fast_symlink(inode))) {
+                       if (ext4_test_inode_flag(inode, EXT4_INODE_EXTENTS))
                                ret = ext4_ext_check_inode(inode);
-               } else if (S_ISREG(inode->i_mode) || S_ISDIR(inode->i_mode) ||
-                          (S_ISLNK(inode->i_mode) &&
-                           !ext4_inode_is_fast_symlink(inode))) {
-                       /* Validate block references which are part of inode */
-                       ret = ext4_ind_check_inode(inode);
+                       else
+                               ret = ext4_ind_check_inode(inode);
                }
        }
        if (ret)