io_uring: break links on shutdown failure
authorJens Axboe <axboe@kernel.dk>
Tue, 15 Dec 2020 03:57:27 +0000 (20:57 -0700)
committerJens Axboe <axboe@kernel.dk>
Wed, 16 Dec 2020 21:56:36 +0000 (14:56 -0700)
Ensure that the return value of __sys_shutdown_sock() is used to
potentially break links to the request, if we fail.

Fixes: 36f4fa6886a8 ("io_uring: add support for shutdown(2)")
Signed-off-by: Jens Axboe <axboe@kernel.dk>
fs/io_uring.c

index 6f9392c..6a4560c 100644 (file)
@@ -3784,6 +3784,8 @@ static int io_shutdown(struct io_kiocb *req, bool force_nonblock)
                return -ENOTSOCK;
 
        ret = __sys_shutdown_sock(sock, req->shutdown.how);
+       if (ret < 0)
+               req_set_fail_links(req);
        io_req_complete(req, ret);
        return 0;
 #else