From: Pavel Begunkov Date: Sun, 26 May 2019 09:35:47 +0000 (+0300) Subject: io_uring: Fix __io_uring_register() false success X-Git-Tag: v5.1.13~44 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=fd670f49dd3054679d35f7da5ec9f31619f16dd0;p=thirdparty%2Fkernel%2Fstable.git io_uring: Fix __io_uring_register() false success [ Upstream commit a278682dad37fd2f8d2f30d8e84e376a856ab472 ] If io_copy_iov() fails, it will break the loop and report success, albeit partially completed operation. Signed-off-by: Pavel Begunkov Signed-off-by: Jens Axboe Signed-off-by: Sasha Levin --- diff --git a/fs/io_uring.c b/fs/io_uring.c index 4e32a033394cc..e82adbf8adc12 100644 --- a/fs/io_uring.c +++ b/fs/io_uring.c @@ -2506,7 +2506,7 @@ static int io_sqe_buffer_register(struct io_ring_ctx *ctx, void __user *arg, ret = io_copy_iov(ctx, &iov, arg, i); if (ret) - break; + goto err; /* * Don't impose further limits on the size and buffer