X-Git-Url: http://plrg.eecs.uci.edu/git/?a=blobdiff_plain;f=fs%2Fpipe.c;h=2234f3f61f8d8fbc6a1f77dbaae6412130b8a5d4;hb=5a048e3b59fb4211b7978f78217878071c344379;hp=64a494cef0a00be57d0800637b71caf2537c2694;hpb=521e2e03b8f6c92910b72fd464126596242398f8;p=firefly-linux-kernel-4.4.55.git diff --git a/fs/pipe.c b/fs/pipe.c index 64a494cef0a0..2234f3f61f8d 100644 --- a/fs/pipe.c +++ b/fs/pipe.c @@ -863,6 +863,9 @@ pipe_rdwr_open(struct inode *inode, struct file *filp) { int ret = -ENOENT; + if (!(filp->f_mode & (FMODE_READ|FMODE_WRITE))) + return -EINVAL; + mutex_lock(&inode->i_mutex); if (inode->i_pipe) {