diff options
Diffstat (limited to 'fs/open.c')
| -rw-r--r-- | fs/open.c | 7 | 
1 files changed, 2 insertions, 5 deletions
diff --git a/fs/open.c b/fs/open.c index 040cef72bc00..e17f54454b50 100644 --- a/fs/open.c +++ b/fs/open.c @@ -8,7 +8,6 @@  #include <linux/mm.h>  #include <linux/file.h>  #include <linux/fdtable.h> -#include <linux/quotaops.h>  #include <linux/fsnotify.h>  #include <linux/module.h>  #include <linux/slab.h> @@ -271,17 +270,15 @@ static long do_sys_truncate(const char __user *pathname, loff_t length)  	 * Make sure that there are no leases.  get_write_access() protects  	 * against the truncate racing with a lease-granting setlease().  	 */ -	error = break_lease(inode, FMODE_WRITE); +	error = break_lease(inode, O_WRONLY);  	if (error)  		goto put_write_and_out;  	error = locks_verify_truncate(inode, NULL, length);  	if (!error)  		error = security_path_truncate(&path, length, 0); -	if (!error) { -		vfs_dq_init(inode); +	if (!error)  		error = do_truncate(path.dentry, length, 0, NULL); -	}  put_write_and_out:  	put_write_access(inode);  |