Revert "ovl: get_write_access() in truncate"
authorMiklos Szeredi <mszeredi@redhat.com>
Wed, 27 Jul 2016 14:11:01 +0000 (16:11 +0200)
committerMiklos Szeredi <mszeredi@redhat.com>
Mon, 5 Sep 2016 11:57:49 +0000 (13:57 +0200)
This reverts commit 03bea60409328de54e4ff7ec41672e12a9cb0908.

This is now done in vfs_truncate() by "vfs: do get_write_access() on upper
layer of overlayfs".  No need to duplicate this in overlayfs.

Signed-off-by: Miklos Szeredi <mszeredi@redhat.com>
fs/overlayfs/inode.c

index c75625c1efa36fafdd7d077b86f874cd6a16b7e7..be8b300c000bf5f02a8ac45fd66b79e28397f06d 100644 (file)
@@ -61,27 +61,10 @@ int ovl_setattr(struct dentry *dentry, struct iattr *attr)
        if (err)
                goto out;
 
-       if (attr->ia_valid & ATTR_SIZE) {
-               struct inode *realinode = d_inode(ovl_dentry_real(dentry));
-
-               err = -ETXTBSY;
-               if (atomic_read(&realinode->i_writecount) < 0)
-                       goto out_drop_write;
-       }
-
        err = ovl_copy_up(dentry);
        if (!err) {
-               struct inode *winode = NULL;
-
                upperdentry = ovl_dentry_upper(dentry);
 
-               if (attr->ia_valid & ATTR_SIZE) {
-                       winode = d_inode(upperdentry);
-                       err = get_write_access(winode);
-                       if (err)
-                               goto out_drop_write;
-               }
-
                if (attr->ia_valid & (ATTR_KILL_SUID|ATTR_KILL_SGID))
                        attr->ia_valid &= ~ATTR_MODE;
 
@@ -92,11 +75,7 @@ int ovl_setattr(struct dentry *dentry, struct iattr *attr)
                if (!err)
                        ovl_copyattr(upperdentry->d_inode, dentry->d_inode);
                inode_unlock(upperdentry->d_inode);
-
-               if (winode)
-                       put_write_access(winode);
        }
-out_drop_write:
        ovl_drop_write(dentry);
 out:
        return err;
This page took 0.036328 seconds and 5 git commands to generate.