Wrapfs: use set_nlink()
authorErez Zadok <ezk@cs.sunysb.edu>
Mon, 30 Jan 2012 01:34:27 +0000 (20:34 -0500)
committerErez Zadok <ezk@cs.sunysb.edu>
Tue, 27 Dec 2016 03:11:35 +0000 (22:11 -0500)
Signed-off-by: Erez Zadok <ezk@cs.sunysb.edu>
fs/wrapfs/inode.c

index fc1cbb58b659473094bb2d5cdef7c4ca3647af7b..1dc364548efe209b48375d3ec61237a20053d3a7 100644 (file)
@@ -79,8 +79,8 @@ static int wrapfs_link(struct dentry *old_dentry, struct inode *dir,
                goto out;
        fsstack_copy_attr_times(dir, lower_new_dentry->d_inode);
        fsstack_copy_inode_size(dir, lower_new_dentry->d_inode);
-       old_dentry->d_inode->i_nlink =
-               wrapfs_lower_inode(old_dentry->d_inode)->i_nlink;
+       set_nlink(old_dentry->d_inode,
+                 wrapfs_lower_inode(old_dentry->d_inode)->i_nlink);
        i_size_write(new_dentry->d_inode, file_size_save);
 out:
        mnt_drop_write(lower_new_path.mnt);
@@ -122,8 +122,8 @@ static int wrapfs_unlink(struct inode *dir, struct dentry *dentry)
                goto out;
        fsstack_copy_attr_times(dir, lower_dir_inode);
        fsstack_copy_inode_size(dir, lower_dir_inode);
-       dentry->d_inode->i_nlink =
-               wrapfs_lower_inode(dentry->d_inode)->i_nlink;
+       set_nlink(dentry->d_inode,
+                 wrapfs_lower_inode(dentry->d_inode)->i_nlink);
        dentry->d_inode->i_ctime = dir->i_ctime;
        d_drop(dentry); /* this is needed, else LTP fails (VFS won't do it) */
 out:
@@ -192,7 +192,7 @@ static int wrapfs_mkdir(struct inode *dir, struct dentry *dentry, int mode)
        fsstack_copy_attr_times(dir, wrapfs_lower_inode(dir));
        fsstack_copy_inode_size(dir, lower_parent_dentry->d_inode);
        /* update number of links on parent directory */
-       dir->i_nlink = wrapfs_lower_inode(dir)->i_nlink;
+       set_nlink(dir, wrapfs_lower_inode(dir)->i_nlink);
 
 out:
        mnt_drop_write(lower_path.mnt);
@@ -225,7 +225,7 @@ static int wrapfs_rmdir(struct inode *dir, struct dentry *dentry)
                clear_nlink(dentry->d_inode);
        fsstack_copy_attr_times(dir, lower_dir_dentry->d_inode);
        fsstack_copy_inode_size(dir, lower_dir_dentry->d_inode);
-       dir->i_nlink = lower_dir_dentry->d_inode->i_nlink;
+       set_nlink(dir, lower_dir_dentry->d_inode->i_nlink);
 
 out:
        mnt_drop_write(lower_path.mnt);