diff options
Diffstat (limited to 'fs')
| -rw-r--r-- | fs/anon_inodes.c | 8 | ||||
| -rw-r--r-- | fs/file_table.c | 2 | ||||
| -rw-r--r-- | fs/hugetlbfs/inode.c | 12 | ||||
| -rw-r--r-- | fs/pipe.c | 4 | 
4 files changed, 11 insertions, 15 deletions
diff --git a/fs/anon_inodes.c b/fs/anon_inodes.c index 28d39fb84ae..a14eb0c1cd8 100644 --- a/fs/anon_inodes.c +++ b/fs/anon_inodes.c @@ -131,7 +131,6 @@ struct file *anon_inode_getfile(const char *name,  	struct qstr this;  	struct path path;  	struct file *file; -	int error;  	if (IS_ERR(anon_inode_inode))  		return ERR_PTR(-ENODEV); @@ -143,7 +142,7 @@ struct file *anon_inode_getfile(const char *name,  	 * Link the inode to a directory entry by creating a unique name  	 * using the inode sequence number.  	 */ -	error = -ENOMEM; +	file = ERR_PTR(-ENOMEM);  	this.name = name;  	this.len = strlen(name);  	this.hash = 0; @@ -160,9 +159,8 @@ struct file *anon_inode_getfile(const char *name,  	d_instantiate(path.dentry, anon_inode_inode); -	error = -ENFILE;  	file = alloc_file(&path, OPEN_FMODE(flags), fops); -	if (!file) +	if (IS_ERR(file))  		goto err_dput;  	file->f_mapping = anon_inode_inode->i_mapping; @@ -177,7 +175,7 @@ err_dput:  	path_put(&path);  err_module:  	module_put(fops->owner); -	return ERR_PTR(error); +	return file;  }  EXPORT_SYMBOL_GPL(anon_inode_getfile); diff --git a/fs/file_table.c b/fs/file_table.c index cd76d4fdf4a..aa07d3684a2 100644 --- a/fs/file_table.c +++ b/fs/file_table.c @@ -173,7 +173,7 @@ struct file *alloc_file(struct path *path, fmode_t mode,  	file = get_empty_filp();  	if (IS_ERR(file)) -		return NULL; +		return file;  	file->f_path = *path;  	file->f_mapping = path->dentry->d_inode->i_mapping; diff --git a/fs/hugetlbfs/inode.c b/fs/hugetlbfs/inode.c index edb42ea60c7..99fe7ef2f09 100644 --- a/fs/hugetlbfs/inode.c +++ b/fs/hugetlbfs/inode.c @@ -923,8 +923,7 @@ struct file *hugetlb_file_setup(const char *name, unsigned long addr,  				struct user_struct **user,  				int creat_flags, int page_size_log)  { -	int error = -ENOMEM; -	struct file *file; +	struct file *file = ERR_PTR(-ENOMEM);  	struct inode *inode;  	struct path path;  	struct dentry *root; @@ -964,7 +963,7 @@ struct file *hugetlb_file_setup(const char *name, unsigned long addr,  		goto out_shm_unlock;  	path.mnt = mntget(hugetlbfs_vfsmount[hstate_idx]); -	error = -ENOSPC; +	file = ERR_PTR(-ENOSPC);  	inode = hugetlbfs_get_inode(root->d_sb, NULL, S_IFREG | S_IRWXUGO, 0);  	if (!inode)  		goto out_dentry; @@ -973,7 +972,7 @@ struct file *hugetlb_file_setup(const char *name, unsigned long addr,  	size += addr & ~huge_page_mask(hstate);  	num_pages = ALIGN(size, huge_page_size(hstate)) >>  			huge_page_shift(hstate); -	error = -ENOMEM; +	file = ERR_PTR(-ENOMEM);  	if (hugetlb_reserve_pages(inode, 0, num_pages, NULL, acctflag))  		goto out_inode; @@ -981,10 +980,9 @@ struct file *hugetlb_file_setup(const char *name, unsigned long addr,  	inode->i_size = size;  	clear_nlink(inode); -	error = -ENFILE;  	file = alloc_file(&path, FMODE_WRITE | FMODE_READ,  			&hugetlbfs_file_operations); -	if (!file) +	if (IS_ERR(file))  		goto out_dentry; /* inode is already attached */  	return file; @@ -998,7 +996,7 @@ out_shm_unlock:  		user_shm_unlock(size, *user);  		*user = NULL;  	} -	return ERR_PTR(error); +	return file;  }  static int __init init_hugetlbfs_fs(void) diff --git a/fs/pipe.c b/fs/pipe.c index 39baf6c3ebb..64a494cef0a 100644 --- a/fs/pipe.c +++ b/fs/pipe.c @@ -1037,13 +1037,13 @@ int create_pipe_files(struct file **res, int flags)  	err = -ENFILE;  	f = alloc_file(&path, FMODE_WRITE, &write_pipefifo_fops); -	if (!f) +	if (IS_ERR(f))  		goto err_dentry;  	f->f_flags = O_WRONLY | (flags & (O_NONBLOCK | O_DIRECT));  	res[0] = alloc_file(&path, FMODE_READ, &read_pipefifo_fops); -	if (!res[0]) +	if (IS_ERR(res[0]))  		goto err_file;  	path_get(&path);  |