Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754107AbaKFX0j (ORCPT ); Thu, 6 Nov 2014 18:26:39 -0500 Received: from mx1.redhat.com ([209.132.183.28]:54034 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751385AbaKFX0g (ORCPT ); Thu, 6 Nov 2014 18:26:36 -0500 From: Jeff Moyer To: Milosz Tanski Cc: linux-kernel@vger.kernel.org, Christoph Hellwig , linux-fsdevel@vger.kernel.org, linux-aio@kvack.org, Mel Gorman , Volker Lendecke , Tejun Heo , "Theodore Ts'o" , Al Viro , linux-api@vger.kernel.org, Michael Kerrisk , linux-arch@vger.kernel.org, linux-mm@kvack.org Subject: Re: [PATCH v5 2/7] vfs: Define new syscalls preadv2,pwritev2 References: X-PGP-KeyID: 1F78E1B4 X-PGP-CertKey: F6FE 280D 8293 F72C 65FD 5A58 1FF8 A7CA 1F78 E1B4 X-PCLoadLetter: What the f**k does that mean? Date: Thu, 06 Nov 2014 18:25:50 -0500 In-Reply-To: (Milosz Tanski's message of "Wed, 5 Nov 2014 16:14:48 -0500") Message-ID: User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Milosz Tanski writes: > New syscalls that take an flag argument. This change does not add any specific > flags. > > Signed-off-by: Milosz Tanski > Reviewed-by: Christoph Hellwig > --- > fs/read_write.c | 176 ++++++++++++++++++++++++++++++-------- > include/linux/compat.h | 6 ++ > include/linux/syscalls.h | 6 ++ > include/uapi/asm-generic/unistd.h | 6 +- > mm/filemap.c | 5 +- > 5 files changed, 158 insertions(+), 41 deletions(-) > > diff --git a/fs/read_write.c b/fs/read_write.c > index 94b2d34..907735c 100644 > --- a/fs/read_write.c > +++ b/fs/read_write.c > @@ -866,6 +866,8 @@ ssize_t vfs_readv(struct file *file, const struct iovec __user *vec, > return -EBADF; > if (!(file->f_mode & FMODE_CAN_READ)) > return -EINVAL; > + if (flags & ~0) > + return -EINVAL; > > return do_readv_writev(READ, file, vec, vlen, pos, flags); > } > @@ -879,21 +881,23 @@ ssize_t vfs_writev(struct file *file, const struct iovec __user *vec, > return -EBADF; > if (!(file->f_mode & FMODE_CAN_WRITE)) > return -EINVAL; > + if (flags & ~0) > + return -EINVAL; > > return do_readv_writev(WRITE, file, vec, vlen, pos, flags); > } Hi, Milosz, You've checked for invalid flags for the normal system calls, but not for the compat variants. Can you add that in, please? Thanks! Jeff -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/