aboutsummaryrefslogtreecommitdiffstats
path: root/fs/ext4
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2011-11-02 14:41:01 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2011-11-02 14:41:01 -0400
commitd211858837ff8d8e31942ca7d27e6e08b3b46f5e (patch)
treea8ec83a791066e64ad02052498dbe39ebefacab9 /fs/ext4
parentf1f8935a5c38a2c61e86a42bc971a2539eef2211 (diff)
parentf0023bc617ba600956b9226f1806033d7486c8ba (diff)
Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/hch/vfs-queue
* 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/hch/vfs-queue: vfs: add d_prune dentry operation vfs: protect i_nlink filesystems: add set_nlink() filesystems: add missing nlink wrappers logfs: remove unnecessary nlink setting ocfs2: remove unnecessary nlink setting jfs: remove unnecessary nlink setting hypfs: remove unnecessary nlink setting vfs: ignore error on forced remount readlinkat: ensure we return ENOENT for the empty pathname for normal lookups vfs: fix dentry leak in simple_fill_super()
Diffstat (limited to 'fs/ext4')
-rw-r--r--fs/ext4/ialloc.c2
-rw-r--r--fs/ext4/inode.c2
-rw-r--r--fs/ext4/migrate.c2
-rw-r--r--fs/ext4/namei.c8
4 files changed, 7 insertions, 7 deletions
diff --git a/fs/ext4/ialloc.c b/fs/ext4/ialloc.c
index 612bec255c6c..00beb4f9cc4f 100644
--- a/fs/ext4/ialloc.c
+++ b/fs/ext4/ialloc.c
@@ -948,7 +948,7 @@ fail_free_drop:
948fail_drop: 948fail_drop:
949 dquot_drop(inode); 949 dquot_drop(inode);
950 inode->i_flags |= S_NOQUOTA; 950 inode->i_flags |= S_NOQUOTA;
951 inode->i_nlink = 0; 951 clear_nlink(inode);
952 unlock_new_inode(inode); 952 unlock_new_inode(inode);
953 iput(inode); 953 iput(inode);
954 brelse(inode_bitmap_bh); 954 brelse(inode_bitmap_bh);
diff --git a/fs/ext4/inode.c b/fs/ext4/inode.c
index f2419a15b81a..cc5a6da030a1 100644
--- a/fs/ext4/inode.c
+++ b/fs/ext4/inode.c
@@ -3791,7 +3791,7 @@ struct inode *ext4_iget(struct super_block *sb, unsigned long ino)
3791 inode->i_uid |= le16_to_cpu(raw_inode->i_uid_high) << 16; 3791 inode->i_uid |= le16_to_cpu(raw_inode->i_uid_high) << 16;
3792 inode->i_gid |= le16_to_cpu(raw_inode->i_gid_high) << 16; 3792 inode->i_gid |= le16_to_cpu(raw_inode->i_gid_high) << 16;
3793 } 3793 }
3794 inode->i_nlink = le16_to_cpu(raw_inode->i_links_count); 3794 set_nlink(inode, le16_to_cpu(raw_inode->i_links_count));
3795 3795
3796 ext4_clear_state_flags(ei); /* Only relevant on 32-bit archs */ 3796 ext4_clear_state_flags(ei); /* Only relevant on 32-bit archs */
3797 ei->i_dir_start_lookup = 0; 3797 ei->i_dir_start_lookup = 0;
diff --git a/fs/ext4/migrate.c b/fs/ext4/migrate.c
index f729377bf043..16ac228dbec6 100644
--- a/fs/ext4/migrate.c
+++ b/fs/ext4/migrate.c
@@ -481,7 +481,7 @@ int ext4_ext_migrate(struct inode *inode)
481 * Set the i_nlink to zero so it will be deleted later 481 * Set the i_nlink to zero so it will be deleted later
482 * when we drop inode reference. 482 * when we drop inode reference.
483 */ 483 */
484 tmp_inode->i_nlink = 0; 484 clear_nlink(tmp_inode);
485 485
486 ext4_ext_tree_init(handle, tmp_inode); 486 ext4_ext_tree_init(handle, tmp_inode);
487 ext4_orphan_add(handle, tmp_inode); 487 ext4_orphan_add(handle, tmp_inode);
diff --git a/fs/ext4/namei.c b/fs/ext4/namei.c
index 2a75eed2ef06..aa4c782c9dd7 100644
--- a/fs/ext4/namei.c
+++ b/fs/ext4/namei.c
@@ -1694,7 +1694,7 @@ static void ext4_inc_count(handle_t *handle, struct inode *inode)
1694 if (is_dx(inode) && inode->i_nlink > 1) { 1694 if (is_dx(inode) && inode->i_nlink > 1) {
1695 /* limit is 16-bit i_links_count */ 1695 /* limit is 16-bit i_links_count */
1696 if (inode->i_nlink >= EXT4_LINK_MAX || inode->i_nlink == 2) { 1696 if (inode->i_nlink >= EXT4_LINK_MAX || inode->i_nlink == 2) {
1697 inode->i_nlink = 1; 1697 set_nlink(inode, 1);
1698 EXT4_SET_RO_COMPAT_FEATURE(inode->i_sb, 1698 EXT4_SET_RO_COMPAT_FEATURE(inode->i_sb,
1699 EXT4_FEATURE_RO_COMPAT_DIR_NLINK); 1699 EXT4_FEATURE_RO_COMPAT_DIR_NLINK);
1700 } 1700 }
@@ -1860,7 +1860,7 @@ retry:
1860 de->name_len = 2; 1860 de->name_len = 2;
1861 strcpy(de->name, ".."); 1861 strcpy(de->name, "..");
1862 ext4_set_de_type(dir->i_sb, de, S_IFDIR); 1862 ext4_set_de_type(dir->i_sb, de, S_IFDIR);
1863 inode->i_nlink = 2; 1863 set_nlink(inode, 2);
1864 BUFFER_TRACE(dir_block, "call ext4_handle_dirty_metadata"); 1864 BUFFER_TRACE(dir_block, "call ext4_handle_dirty_metadata");
1865 err = ext4_handle_dirty_metadata(handle, inode, dir_block); 1865 err = ext4_handle_dirty_metadata(handle, inode, dir_block);
1866 if (err) 1866 if (err)
@@ -2213,7 +2213,7 @@ static int ext4_unlink(struct inode *dir, struct dentry *dentry)
2213 ext4_warning(inode->i_sb, 2213 ext4_warning(inode->i_sb,
2214 "Deleting nonexistent file (%lu), %d", 2214 "Deleting nonexistent file (%lu), %d",
2215 inode->i_ino, inode->i_nlink); 2215 inode->i_ino, inode->i_nlink);
2216 inode->i_nlink = 1; 2216 set_nlink(inode, 1);
2217 } 2217 }
2218 retval = ext4_delete_entry(handle, dir, de, bh); 2218 retval = ext4_delete_entry(handle, dir, de, bh);
2219 if (retval) 2219 if (retval)
@@ -2538,7 +2538,7 @@ static int ext4_rename(struct inode *old_dir, struct dentry *old_dentry,
2538 if (new_inode) { 2538 if (new_inode) {
2539 /* checked empty_dir above, can't have another parent, 2539 /* checked empty_dir above, can't have another parent,
2540 * ext4_dec_count() won't work for many-linked dirs */ 2540 * ext4_dec_count() won't work for many-linked dirs */
2541 new_inode->i_nlink = 0; 2541 clear_nlink(new_inode);
2542 } else { 2542 } else {
2543 ext4_inc_count(handle, new_dir); 2543 ext4_inc_count(handle, new_dir);
2544 ext4_update_dx_flag(new_dir); 2544 ext4_update_dx_flag(new_dir);