From: Jens Axboe Date: Tue, 3 Dec 2019 01:49:10 +0000 (-0700) Subject: io_uring: transform send/recvmsg() -ERESTARTSYS to -EINTR X-Git-Tag: v5.3.16~72 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=9beee25c38761f3d67de020475229eadc71524de;p=thirdparty%2Fkernel%2Fstable.git io_uring: transform send/recvmsg() -ERESTARTSYS to -EINTR commit 441cdbd5449b4923cd413d3ba748124f91388be9 upstream. We should never return -ERESTARTSYS to userspace, transform it into -EINTR. Cc: stable@vger.kernel.org # v5.3+ Signed-off-by: Jens Axboe Signed-off-by: Greg Kroah-Hartman --- diff --git a/fs/io_uring.c b/fs/io_uring.c index f563a581b924c..d520a6673c82d 100644 --- a/fs/io_uring.c +++ b/fs/io_uring.c @@ -1535,6 +1535,8 @@ static int io_send_recvmsg(struct io_kiocb *req, const struct io_uring_sqe *sqe, ret = fn(sock, msg, flags); if (force_nonblock && ret == -EAGAIN) return ret; + if (ret == -ERESTARTSYS) + ret = -EINTR; } io_cqring_add_event(req->ctx, sqe->user_data, ret);