diff options
| -rw-r--r-- | fs/read_write.c | 3 | 
1 files changed, 3 insertions, 0 deletions
diff --git a/fs/read_write.c b/fs/read_write.c index f7b5a23b804..e6ddc8dceb9 100644 --- a/fs/read_write.c +++ b/fs/read_write.c @@ -424,6 +424,9 @@ ssize_t __kernel_write(struct file *file, const char *buf, size_t count, loff_t  	const char __user *p;  	ssize_t ret; +	if (!file->f_op || (!file->f_op->write && !file->f_op->aio_write)) +		return -EINVAL; +  	old_fs = get_fs();  	set_fs(get_ds());  	p = (__force const char __user *)buf;  |