From c6b6024f33fedec2265ebd9f2cd4bbcd1fbbf435 Mon Sep 17 00:00:00 2001 From: Jens Axboe Date: Wed, 21 Sep 2022 20:18:23 -0600 Subject: [PATCH] Add io_uring_register_sync_cancel() man page Link: https://github.com/axboe/liburing/issues/659 Signed-off-by: Jens Axboe --- man/io_uring_register_sync_cancel.3 | 71 +++++++++++++++++++++++++++++ 1 file changed, 71 insertions(+) create mode 100644 man/io_uring_register_sync_cancel.3 diff --git a/man/io_uring_register_sync_cancel.3 b/man/io_uring_register_sync_cancel.3 new file mode 100644 index 00000000..50d256d6 --- /dev/null +++ b/man/io_uring_register_sync_cancel.3 @@ -0,0 +1,71 @@ +.\" Copyright (C) 2022 Jens Axboe +.\" +.\" SPDX-License-Identifier: LGPL-2.0-or-later +.\" +.TH io_uring_register_sync_cancel 3 "September 21, 2022" "liburing-2.3" "liburing Manual" +.SH NAME +io_uring_register_sync_cancel \- issue a synchronous cancelation request +.SH SYNOPSIS +.nf +.B #include +.PP +.BI "int io_uring_register_buffers(struct io_uring *" ring ", +.BI " struct io_uring_sync_cancel_reg *" reg "); +.PP +.SH DESCRIPTION +.PP +The +.BR io_uring_register_sync_cancel (3) +function performs a synchronous cancelation request based on the parameters +specified in +.I reg . + +The +.I reg +argument must be filled in with the appropriate information for the +cancelation request. It looks as follows: +.PP +.in +4n +.EX +struct io_uring_sync_cancel_reg { + __u64 addr; + __s32 fd; + __u32 flags; + struct __kernel_timespec timeout; + __u64 pad[4]; +}; +.EE +.in +.PP + +The arguments largely mirror what the async prep functions support, see +.BR io_uring_prep_cancel (3) +for details. Similarly, the return value is the same. The exception is the +.I timeout +argument, which can be used to limit the time that the kernel will wait for +cancelations to be successful. If the +.I tv_sec +and +.I tv_nsec +values are set to anything but +.B -1UL , +then they indicate a relative timeout upon which cancelations should be +completed by. + +The +.I pad +values must be zero filled. + +.SH RETURN VALUE +See +.BR io_uring_prep_cancel (3) +for details on the return value. If +.I timeout +is set to indicate a timeout, then +.B -ETIME +will be return if exceeded. If an unknown value is set in the request, +or if the pad values are not cleared to zero, then +.I -EINVAL +is returned. +.SH SEE ALSO +.BR io_uring_prep_cancel (3)