Commit f3cd4850 authored by Jens Axboe's avatar Jens Axboe
Browse files

io_uring: ensure open/openat2 name is cleaned on cancelation



If we cancel these requests, we'll leak the memory associated with the
filename. Add them to the table of ops that need cleaning, if
REQ_F_NEED_CLEANUP is set.

Cc: stable@vger.kernel.org
Fixes: e62753e4 ("io_uring: call statx directly")
Reviewed-by: default avatarStefano Garzarella <sgarzare@redhat.com>
Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
parent 4eb8dded
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -5671,6 +5671,11 @@ static void __io_clean_op(struct io_kiocb *req)
			io_put_file(req, req->splice.file_in,
				    (req->splice.flags & SPLICE_F_FD_IN_FIXED));
			break;
		case IORING_OP_OPENAT:
		case IORING_OP_OPENAT2:
			if (req->open.filename)
				putname(req->open.filename);
			break;
		}
		req->flags &= ~REQ_F_NEED_CLEANUP;
	}