summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--fs/jfs/jfs_inode.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/fs/jfs/jfs_inode.c b/fs/jfs/jfs_inode.c
index ae2772cba2d1..ffd2a8a00787 100644
--- a/fs/jfs/jfs_inode.c
+++ b/fs/jfs/jfs_inode.c
@@ -101,11 +101,11 @@ struct inode *ialloc(struct inode *parent, umode_t mode)
 		jfs_inode->mode2 |= IDIRECTORY;
 		jfs_inode->mode2 &= ~JFS_DIRSYNC_FL;
 	}
-	else if (S_ISLNK(mode))
-		jfs_inode->mode2 &=
-			~(JFS_IMMUTABLE_FL|JFS_APPEND_FL);
-	else
+	else {
 		jfs_inode->mode2 |= INLINEEA | ISPARSE;
+		if (S_ISLNK(mode))
+			jfs_inode->mode2 &= ~(JFS_IMMUTABLE_FL|JFS_APPEND_FL);
+	}
 	jfs_inode->mode2 |= mode;
 
 	inode->i_blksize = sb->s_blocksize;