X-Git-Url: http://pileus.org/git/?a=blobdiff_plain;f=fs%2Fpipe.c;h=3a48ba5179d55000e4d6b26f5a1eb7bfb5a5891d;hb=1024d1c24bb3f2c4dc568d96d3b5e22ea5865481;hp=aaf797bd57b9f1a29d4fef90bcd2367dbe9cd32b;hpb=14a3c4ab0e58d143c7928c9eb2f2610205e13bf2;p=~andy%2Flinux diff --git a/fs/pipe.c b/fs/pipe.c index aaf797bd57b..3a48ba5179d 100644 --- a/fs/pipe.c +++ b/fs/pipe.c @@ -1016,10 +1016,7 @@ int do_pipe_flags(int *fd, int flags) goto err_fdr; fdw = error; - error = audit_fd_pair(fdr, fdw); - if (error < 0) - goto err_fdw; - + audit_fd_pair(fdr, fdw); fd_install(fdr, fr); fd_install(fdw, fw); fd[0] = fdr; @@ -1027,8 +1024,6 @@ int do_pipe_flags(int *fd, int flags) return 0; - err_fdw: - put_unused_fd(fdw); err_fdr: put_unused_fd(fdr); err_read_pipe: @@ -1048,7 +1043,7 @@ int do_pipe(int *fd) * sys_pipe() is the normal C calling standard for creating * a pipe. It's not the way Unix traditionally does this, though. */ -asmlinkage long __weak sys_pipe2(int __user *fildes, int flags) +SYSCALL_DEFINE2(pipe2, int __user *, fildes, int, flags) { int fd[2]; int error; @@ -1064,7 +1059,7 @@ asmlinkage long __weak sys_pipe2(int __user *fildes, int flags) return error; } -asmlinkage long __weak sys_pipe(int __user *fildes) +SYSCALL_DEFINE1(pipe, int __user *, fildes) { return sys_pipe2(fildes, 0); }