summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Roesch <shr@fb.com>2021-11-17 12:02:04 -0800
committerJens Axboe <axboe@kernel.dk>2021-11-17 13:06:20 -0700
commit2a4091133858c659fb1cb7f42642ebcb44032e86 (patch)
tree0bb2b22fe6dfcd3a7711fd7ef17c062c69db7c24
parenta973e500d5eaf9ccf28a6acaec738f6eb4221683 (diff)
downloadliburing-2a4091133858c659fb1cb7f42642ebcb44032e86.tar.gz
liburing-2a4091133858c659fb1cb7f42642ebcb44032e86.tar.bz2
liburing: add missing man pages
Add missing man pages for liburing functions. Signed-off-by: Stefan Roesch <shr@fb.com> Signed-off-by: Jens Axboe <axboe@kernel.dk>
-rw-r--r--man/io_uring_cqe_seen.332
-rw-r--r--man/io_uring_prep_read.338
-rw-r--r--man/io_uring_prep_readv.337
-rw-r--r--man/io_uring_prep_readv2.360
-rw-r--r--man/io_uring_prep_write.338
-rw-r--r--man/io_uring_prep_writev.337
-rw-r--r--man/io_uring_prep_writev2.360
-rw-r--r--man/io_uring_register_buffers.334
-rw-r--r--man/io_uring_register_files.335
-rw-r--r--man/io_uring_sqe_get_data.334
-rw-r--r--man/io_uring_sqe_set_data.330
-rw-r--r--man/io_uring_submit.329
-rw-r--r--man/io_uring_submit_and_wait.334
-rw-r--r--man/io_uring_submit_and_wait_timeout.349
-rw-r--r--man/io_uring_unregister_buffers.326
-rw-r--r--man/io_uring_unregister_files.326
-rw-r--r--man/io_uring_wait_cqe.333
-rw-r--r--man/io_uring_wait_cqe_nr.336
-rw-r--r--man/io_uring_wait_cqe_timeout.339
-rw-r--r--man/io_uring_wait_cqes.346
20 files changed, 753 insertions, 0 deletions
diff --git a/man/io_uring_cqe_seen.3 b/man/io_uring_cqe_seen.3
new file mode 100644
index 0000000..6a8b151
--- /dev/null
+++ b/man/io_uring_cqe_seen.3
@@ -0,0 +1,32 @@
+.\" Copyright (C) 2021 Stefan Roesch <shr@fb.com>
+.\"
+.\" SPDX-License-Identifier: LGPL-2.0-or-later
+.\"
+.TH io_uring_cqe_seen 3 "November 15, 2021" "liburing-2.1" "liburing Manual"
+.SH NAME
+io_uring_cqe_seen - Mark io_uring completion event as processed
+.SH SYNOPSIS
+.nf
+.BR "#include <liburing.h>"
+.PP
+.BI "void io_uring_cqe_seen(struct io_uring *ring,"
+.BI " struct io_uring_cqe *cqe)"
+.fi
+.PP
+.SH DESCRIPTION
+.PP
+The io_uring_cqe_seen() function marks the IO completion
+.I cqe
+belonging to the
+.I ring
+param as processed.
+
+After the caller has submitted a request with io_uring_submit(), he can retrieve
+the completion with io_uring_wait_cqe() and mark it then as processed with
+io_uring_cqe_seen().
+
+Completions must be marked as completed, so their slot can get reused.
+.SH RETURN VALUE
+None
+.SH SEE ALSO
+.BR io_uring_submit (3), io_uring_wait_cqe(3) \ No newline at end of file
diff --git a/man/io_uring_prep_read.3 b/man/io_uring_prep_read.3
new file mode 100644
index 0000000..e3feb1f
--- /dev/null
+++ b/man/io_uring_prep_read.3
@@ -0,0 +1,38 @@
+.\" Copyright (C) 2021 Stefan Roesch <shr@fb.com>
+.\"
+.\" SPDX-License-Identifier: LGPL-2.0-or-later
+.\"
+.TH io_uring_prep_read 3 "November 15, 2021" "liburing-2.1" "liburing Manual"
+.SH NAME
+io_uring_prep_read - prepare I/O read request
+
+.SH SYNOPSIS
+.nf
+.BR "#include <liburing.h>"
+.PP
+.BI "void io_uring_prep_read(struct io_uring_sqe *sqe,"
+.BI " int fd,"
+.BI " void *buf,"
+.BI " unsigned nbytes,"
+.BI " __u64 offset)"
+
+.SH DESCRIPTION
+.PP
+The io_uring_prep_read() prepares an IO read request. The submission queue entry
+.I sqe
+is setup to use the file descriptor
+.I fd
+to start reading
+.I nbytes
+into the buffer
+.I buf
+at the
+.I offset.
+
+After the read has been prepared it can be submitted with one of the submit
+functions.
+
+.SH RETURN VALUE
+None
+.SH SEE ALSO
+.BR io_uring_get_sqe (3), io_uring_prep_readv (3), io_uring_prep_readv2 (3), io_uring_submit(3)
diff --git a/man/io_uring_prep_readv.3 b/man/io_uring_prep_readv.3
new file mode 100644
index 0000000..31eebc1
--- /dev/null
+++ b/man/io_uring_prep_readv.3
@@ -0,0 +1,37 @@
+.\" Copyright (C) 2021 Stefan Roesch <shr@fb.com>
+.\"
+.\" SPDX-License-Identifier: LGPL-2.0-or-later
+.\"
+.TH io_uring_prep_readv 3 "November 15, 2021" "liburing-2.1" "liburing Manual"
+.SH NAME
+io_uring_prep_readv - prepare vector I/O read request
+.fi
+.SH SYNOPSIS
+.nf
+.BR "#include <liburing.h>"
+.PP
+.BI "void io_uring_prep_readv(struct io_uring_sqe *sqe,"
+.BI " int fd,"
+.BI " const struct iovec *iovecs,"
+.BI " unsigned nr_vecs,"
+.BI " __u64 offset)"
+.PP
+.SH DESCRIPTION
+.PP
+The io_uring_prep_readv() prepares a vectored IO read request. The submission queue entry
+.I sqe
+is setup to use the file descriptor
+.I fd
+to start reading
+.I nr_vecs
+into the
+.I iovecs
+array at
+.I offset.
+
+After the write has been prepared it can be submitted with one of the submit
+functions.
+.SH RETURN VALUE
+None
+.SH SEE ALSO
+.BR io_uring_get_sqe (3), io_uring_prep_read (3), io_uring_prep_readv2 (3), io_uring_submit (3)
diff --git a/man/io_uring_prep_readv2.3 b/man/io_uring_prep_readv2.3
new file mode 100644
index 0000000..2755281
--- /dev/null
+++ b/man/io_uring_prep_readv2.3
@@ -0,0 +1,60 @@
+.\" Copyright (C) 2021 Stefan Roesch <shr@fb.com>
+.\"
+.\" SPDX-License-Identifier: LGPL-2.0-or-later
+.\"
+.TH io_uring_prep_readv2 3 "November 15, 2021" "liburing-2.1" "liburing Manual"
+.SH NAME
+.fi
+io_uring_prep_readv2 - prepare vector I/O read request with flags
+
+.SH SYNOPSIS
+.nf
+.BR "#include <liburing.h>"
+.PP
+.BI "void io_uring_prep_readv2(struct io_uring_sqe *sqe,"
+.BI " int fd,"
+.BI " const struct iovec *iovecs,"
+.BI " unsigned nr_vecs,"
+.BI " __u64 offset,"
+.BI " int flags)"
+.fi
+.PP
+.SH DESCRIPTION
+.PP
+The io_uring_prep_readv2() prepares a vectored IO read request. The submission queue entry
+.I sqe
+is setup to use the file descriptor
+.I fd
+to start reading
+.I nr_vecs
+into the
+.I iovecs
+array at
+.I offset.
+The behavior of the function can be controlled with the
+.I flags
+parameter.
+
+Supported values for flags are:
+.TP
+.B RWF_HIPRI
+High priority request, poll if possible
+.TP
+.B RWF_DSYNC
+per-IO O_DSYNC
+.TP
+.B RWF_SYNC
+per-IO O_SYNC
+.TP
+.B RWF_NOWAIT
+per-IO, return -EAGAIN if operation would block
+.TP
+.B RWF_APPEND
+per-IO O_APPEND
+.TP
+
+After the write has been prepared, it can be submitted with one of the submit functions.
+.SH RETURN VALUE
+None
+.SH SEE ALSO
+.BR io_uring_get_sqe (3), io_uring_prep_read (3), io_uring_prep_readv (3), io_uring_submit (3)
diff --git a/man/io_uring_prep_write.3 b/man/io_uring_prep_write.3
new file mode 100644
index 0000000..a03c1e7
--- /dev/null
+++ b/man/io_uring_prep_write.3
@@ -0,0 +1,38 @@
+.\" Copyright (C) 2021 Stefan Roesch <shr@fb.com>
+.\"
+.\" SPDX-License-Identifier: LGPL-2.0-or-later
+.\"
+.TH io_uring_prep_write 3 "November 15, 2021" "liburing-2.1" "liburing Manual"
+.SH NAME
+io_uring_prep_write - prepare I/O write request
+
+.SH SYNOPSIS
+.nf
+.BR "#include <liburing.h>"
+.PP
+.BI "void io_uring_prep_write(struct io_uring_sqe *sqe,"
+.BI " int fd,"
+.BI " void *buf,"
+.BI " unsigned nbytes,"
+.BI " __u64 offset)"
+.PP
+.SH DESCRIPTION
+.PP
+The io_uring_prep_write() prepares an IO write request. The submission queue entry
+.I sqe
+is setup to use the file descriptor
+.I fd
+to start writing
+.I nbytes
+from the buffer
+.I buf
+at file
+.I offset.
+
+After the write has been prepared, it can be submitted with one of the submit
+functions.
+
+.SH RETURN VALUE
+None
+.SH SEE ALSO
+.BR io_uring_get_sqe (3), io_uring_submit (3) \ No newline at end of file
diff --git a/man/io_uring_prep_writev.3 b/man/io_uring_prep_writev.3
new file mode 100644
index 0000000..8f68e29
--- /dev/null
+++ b/man/io_uring_prep_writev.3
@@ -0,0 +1,37 @@
+.\" Copyright (C) 2021 Stefan Roesch <shr@fb.com>
+.\"
+.\" SPDX-License-Identifier: LGPL-2.0-or-later
+.\"
+.TH io_uring_prep_writev 3 "November 15, 2021" "liburing-2.1" "liburing Manual"
+.SH NAME
+io_uring_prep_writev - prepare vector I/O write request
+
+.SH SYNOPSIS
+.nf
+.BR "#include <liburing.h>"
+.PP
+.BI "void io_uring_prep_writev(struct io_uring_sqe *sqe,"
+.BI " int fd,"
+.BI " const struct iovec *iovecs,"
+.BI " unsigned nr_vecs,"
+.BI " __u64 offset)"
+.PP
+.SH DESCRIPTION
+.PP
+The io_uring_prep_writev() prepares a vectored IO write request. The submission queue entry
+.I sqe
+is setup to use the file descriptor
+.I fd
+to start writing
+.I nr_vecs
+from the
+.I iovecs
+array at file
+.I offset.
+
+After the write has been prepared it can be submitted with one of the submit
+functions.
+.SH RETURN VALUE
+None
+.SH SEE ALSO
+.BR io_uring_get_sqe (3), io_uring_prep_write (3), io_uring_prep_writev2 (3), io_uring_submit (3) \ No newline at end of file
diff --git a/man/io_uring_prep_writev2.3 b/man/io_uring_prep_writev2.3
new file mode 100644
index 0000000..f1a4dcc
--- /dev/null
+++ b/man/io_uring_prep_writev2.3
@@ -0,0 +1,60 @@
+.\" Copyright (C) 2021 Stefan Roesch <shr@fb.com>
+.\"
+.\" SPDX-License-Identifier: LGPL-2.0-or-later
+.\"
+.TH io_uring_prep_writev2 3 "November 15, 2021" "liburing-2.1" "liburing Manual"
+.SH NAME
+io_uring_prep_writev2 - prepare vector I/O write request with flags
+
+.SH SYNOPSIS
+.nf
+.BR "#include <liburing.h>"
+.PP
+.BI "void io_uring_prep_writev2(struct io_uring_sqe *sqe,"
+.BI " int fd,"
+.BI " const struct iovec *iovecs,"
+.BI " unsigned nr_vecs,"
+.BI " __u64 offset,"
+.BI " int flags)"
+.fi
+.PP
+.SH DESCRIPTION
+.PP
+The io_uring_prep_writev2() prepares a vectored IO write request. The submission queue entry
+.I sqe
+is setup to use the file descriptor
+.I fd
+to start writing
+.I nr_vecs
+from the
+.I iovecs
+array at file
+.I offset.
+The behavior of the function can be controlled with the
+.I flags
+parameter.
+
+Supported values for flags are:
+.TP
+.B RWF_HIPRI
+High priority request, poll if possible
+.TP
+.B RWF_DSYNC
+per-IO O_DSYNC
+.TP
+.B RWF_SYNC
+per-IO O_SYNC
+.TP
+.B RWF_NOWAIT
+per-IO, return -EAGAIN if operation would block
+.TP
+.B RWF_APPEND
+per-IO O_APPEND
+
+.TP
+After the write has been prepared, it can be submitted with one of the submit functions.
+
+.SH RETURN VALUE
+None
+.SH SEE ALSO
+.BR io_uring_get_sqe (3), io_uring_prep_write (3), io_uring_prep_writev (3), io_uring_submit (3) \ No newline at end of file
diff --git a/man/io_uring_register_buffers.3 b/man/io_uring_register_buffers.3
new file mode 100644
index 0000000..48cc506
--- /dev/null
+++ b/man/io_uring_register_buffers.3
@@ -0,0 +1,34 @@
+.\" Copyright (C) 2021 Stefan Roesch <shr@fb.com>
+.\"
+.\" SPDX-License-Identifier: LGPL-2.0-or-later
+.\"
+.TH io_uring_register_buffers 3 "November 15, 2021" "liburing-2.1" "liburing Manual"
+.SH NAME
+io_uring_register_buffers - register buffers for fixed buffer operations
+.fi
+.SH SYNOPSIS
+.nf
+.BR "#include <liburing.h>"
+.PP
+.BI "int io_uring_register_buffers(struct io_uring *ring,"
+.BI " const struct iovec *iovecs,
+.BI " unsigned nr_iovecs)"
+.PP
+.SH DESCRIPTION
+.PP
+The io_uring_register_buffers() function registers
+.I nr_iovecs
+number of buffers defined by the array
+.I iovecs
+belonging to the
+.I ring.
+
+After the caller has registered the buffers, they can be used with one of the
+fixed buffers functions.
+
+.SH RETURN VALUE
+On success
+.BR io_uring_register_buffers (3)
+returns 0. On failure it returns -errno.
+.SH SEE ALSO
+.BR io_uring_get_sqe (3), io_uring_unregister_buffers (3) \ No newline at end of file
diff --git a/man/io_uring_register_files.3 b/man/io_uring_register_files.3
new file mode 100644
index 0000000..9b259a2
--- /dev/null
+++ b/man/io_uring_register_files.3
@@ -0,0 +1,35 @@
+.\" Copyright (C) 2021 Stefan Roesch <shr@fb.com>
+.\"
+.\" SPDX-License-Identifier: LGPL-2.0-or-later
+.\"
+.TH io_uring_register_files 3 "November 15, 2021" "liburing-2.1" "liburing Manual"
+.SH NAME
+io_uring_register_files - register file descriptors
+.fi
+.SH SYNOPSIS
+.nf
+.BR "#include <liburing.h>"
+.PP
+.BI "int io_uring_register_files(struct io_uring *ring,"
+.BI " const int *files,"
+.BI " unsigned nr_files)"
+.PP
+.SH DESCRIPTION
+.PP
+The io_uring_register_files() function registers
+.I nr_files
+number of file descriptors defined by the array
+.I files
+belonging to the
+.I ring
+for subsequent operations.
+
+After the caller has registered the buffers, they can be used with the
+submission queue polling operations.
+
+.SH RETURN VALUE
+On success
+.BR io_uring_register_files (3)
+returns 0. On failure it returns -errno.
+.SH SEE ALSO
+.BR io_uring_get_sqe (3), io_uring_unregister_files (3)
diff --git a/man/io_uring_sqe_get_data.3 b/man/io_uring_sqe_get_data.3
new file mode 100644
index 0000000..0c576f9
--- /dev/null
+++ b/man/io_uring_sqe_get_data.3
@@ -0,0 +1,34 @@
+.\" Copyright (C) 2021 Stefan Roesch <shr@fb.com>
+.\"
+.\" SPDX-License-Identifier: LGPL-2.0-or-later
+.\"
+.TH io_uring_cqe_get_data 3 "November 15, 2021" "liburing-2.1" "liburing Manual"
+.SH NAME
+io_uring_cqe_get_data - get user data for completion event
+.SH SYNOPSIS
+.nf
+.BR "#include <liburing.h>"
+.PP
+.BI "void *io_uring_cqe_get_data(struct io_uring_cqe *cqe)"
+.fi
+.PP
+.SH DESCRIPTION
+.PP
+The io_uring_cqe_get_data() function returns the user_data
+with the completion queue entry
+.I cqe.
+
+After the caller has received a completion queue entry (CQE) with io_uring_wait_cqe(),
+he can call he io_uring_cqe_get_data() function to retrieve the
+.I user_data
+value. This requires that
+.I user_data
+has been set earlier with the function io_uring_sqe_set_data().
+
+.SH RETURN VALUE
+If the
+.I user_data
+value has been set before submitting the request, it will be returned. Otherwise
+the functions returns NULL.
+.SH SEE ALSO
+.BR io_uring_get_sqe (3), io_uring_sqe_set_data (3), io_uring_sqe_submit(3) \ No newline at end of file
diff --git a/man/io_uring_sqe_set_data.3 b/man/io_uring_sqe_set_data.3
new file mode 100644
index 0000000..b2dd333
--- /dev/null
+++ b/man/io_uring_sqe_set_data.3
@@ -0,0 +1,30 @@
+.\" Copyright (C) 2021 Stefan Roesch <shr@fb.com>
+.\"
+.\" SPDX-License-Identifier: LGPL-2.0-or-later
+.\"
+.TH io_uring_sqe_set_data 3 "November 15, 2021" "liburing-2.1" "liburing Manual"
+.SH NAME
+io_uring_sqe_set_data - set user data for submission queue event
+.SH SYNOPSIS
+.nf
+.BR "#include <liburing.h>"
+.PP
+.BI "void io_uring_sqe_set_data(struct io_uring_sqe *sqe,"
+.BI " void *user_data)"
+.fi
+.PP
+.SH DESCRIPTION
+.PP
+The io_uring_sqe_set_data() function stores a
+.I user_data
+pointer with the submission queue entry
+.I sqe.
+
+After the caller has requested an submission queue entry (SQE) with io_uring_get_sqe(),
+he can associate a data pointer with the SQE. Once the completion arrives, the
+function io_uring_cqe_get_data() can be called to identify the user request.
+
+.SH RETURN VALUE
+None
+.SH SEE ALSO
+.BR io_uring_get_sqe (3), io_uring_cqe_get_data (3) \ No newline at end of file
diff --git a/man/io_uring_submit.3 b/man/io_uring_submit.3
new file mode 100644
index 0000000..b2fe11f
--- /dev/null
+++ b/man/io_uring_submit.3
@@ -0,0 +1,29 @@
+.\" Copyright (C) 2021 Stefan Roesch <shr@fb.com>
+.\"
+.\" SPDX-License-Identifier: LGPL-2.0-or-later
+.\"
+.TH io_uring_submit 3 "November 15, 2021" "liburing-2.1" "liburing Manual"
+.SH NAME
+io_uring_submit - submit requests to the submission queue
+.fi
+.SH SYNOPSIS
+.nf
+.BR "#include <liburing.h>"
+.PP
+.BI "int io_uring_submit(struct io_uring *ring)"
+.PP
+.SH DESCRIPTION
+.PP
+The io_uring_submit() function submits the next events to the submission
+queue belonging to the
+.I ring.
+
+After the caller retrieves a submission queue entry (SQE) with io_uring_get_sqe(),
+prepares the SQE, it can be submitted with io_uring_submit().
+
+.SH RETURN VALUE
+On success
+.BR io_uring_submit (3)
+returns the number of submitted submission queue entries. On failure it returns -errno.
+.SH SEE ALSO
+.BR io_uring_get_sqe (3), io_uring_submit_and_wait (3), io_uring_submit_and_wait_timeout (3) \ No newline at end of file
diff --git a/man/io_uring_submit_and_wait.3 b/man/io_uring_submit_and_wait.3
new file mode 100644
index 0000000..105cad2
--- /dev/null
+++ b/man/io_uring_submit_and_wait.3
@@ -0,0 +1,34 @@
+.\" Copyright (C) 2021 Stefan Roesch <shr@fb.com>
+.\"
+.\" SPDX-License-Identifier: LGPL-2.0-or-later
+.\"
+.TH io_uring_submit_and_wait 3 "November 15, 2021" "liburing-2.1" "liburing Manual"
+.SH NAME
+io_uring_submit_and_wait - submit requests to the submission queue and wait for completion
+.fi
+.SH SYNOPSIS
+.nf
+.BR "#include <liburing.h>"
+.PP
+.BI "int io_uring_submit_and_wait(struct io_uring *ring,"
+.fi
+.BI " unsigned wait_nr)"
+.PP
+.SH DESCRIPTION
+.PP
+The io_uring_submit_and_wait() function submits the next events to the submission
+queue belonging to the
+.I ring
+and waits for
+.I wait_nr
+completion events.
+
+After the caller retrieves a submission queue entry (SQE) with io_uring_get_sqe(),
+prepares the SQE, it can be submitted with io_uring_submit_and_wait().
+
+.SH RETURN VALUE
+On success
+.BR io_uring_submit_and_wait (3)
+returns the number of submitted submission queue entries. On failure it returns -errno.
+.SH SEE ALSO
+.BR io_uring_get_sqe (3), io_uring_submit (3), io_uring_submit_and_wait_timeout (3) \ No newline at end of file
diff --git a/man/io_uring_submit_and_wait_timeout.3 b/man/io_uring_submit_and_wait_timeout.3
new file mode 100644
index 0000000..d509915
--- /dev/null
+++ b/man/io_uring_submit_and_wait_timeout.3
@@ -0,0 +1,49 @@
+.\" Copyright (C) 2021 Stefan Roesch <shr@fb.com>
+.\"
+.\" SPDX-License-Identifier: LGPL-2.0-or-later
+.\"
+.TH io_uring_submit_and_wait_timeout 3 "November 15, 2021" "liburing-2.1" "liburing Manual"
+.SH NAME
+io_uring_submit_and_wait_timeout - submit requests to the submission queue and
+wait for the completion with timeout
+.fi
+.SH SYNOPSIS
+.nf
+.BR "#include <liburing.h>"
+.PP
+.BI "int io_uring_submit_and_wait_timeout(struct io_uring *ring,"
+.fi
+.BI " struct io_uring_cqe **cqe_ptr,"
+.fi
+.BI " unsigned wait_nr,"
+.fi
+.BI " struct __kernel_timespec *ts,"
+.fi
+.BI " sigset_t *sigmask)"
+.PP
+.SH DESCRIPTION
+.PP
+The io_uring_submit_and_wait_timeout() function submits the next events to the submission
+queue belonging to the
+.I ring
+and waits for
+.I wait_nr
+completion events or until the timeout
+.I ts
+expires.The completion events are stored in the
+.I cqe_ptr array.
+The
+.I sigmask
+specifies the set of signals to block. The prevailing signal mask is restored
+before returning.
+
+After the caller retrieves a submission queue entry (SQE) with io_uring_get_sqe(),
+prepares the SQE, it can be submitted with io_uring_submit_and_wait_timeout().
+
+
+.SH RETURN VALUE
+On success
+.BR io_uring_submit_and_wait_timeout (3)
+returns the number of submitted submission queue entries. On failure it returns -errno.
+.SH SEE ALSO
+.BR io_uring_get_sqe (3), io_uring_submit (3), io_uring_submit_and_wait (3), io_uring_wait_cqe (3) \ No newline at end of file
diff --git a/man/io_uring_unregister_buffers.3 b/man/io_uring_unregister_buffers.3
new file mode 100644
index 0000000..4ec1048
--- /dev/null
+++ b/man/io_uring_unregister_buffers.3
@@ -0,0 +1,26 @@
+.\" Copyright (C) 2021 Stefan Roesch <shr@fb.com>
+.\"
+.\" SPDX-License-Identifier: LGPL-2.0-or-later
+.\"
+.TH io_uring_unregister_buffers 3 "November 15, 2021" "liburing-2.1" "liburing Manual"
+.SH NAME
+io_uring_unregister_buffers - unregister buffers for fixed buffer operations
+.fi
+.SH SYNOPSIS
+.nf
+.BR "#include <liburing.h>"
+.PP
+.BI "int io_uring_unregister_buffers(struct io_uring *ring)"
+.PP
+.SH DESCRIPTION
+.PP
+The io_uring_unregister_buffers() function unregisters
+the fixed buffers previously registered to the
+.I ring.
+
+.SH RETURN VALUE
+On success
+.BR io_uring_unregister_buffers (3)
+returns 0. On failure it returns -errno.
+.SH SEE ALSO
+.BR io_uring_register_buffers (3) \ No newline at end of file
diff --git a/man/io_uring_unregister_files.3 b/man/io_uring_unregister_files.3
new file mode 100644
index 0000000..0fadf5d
--- /dev/null
+++ b/man/io_uring_unregister_files.3
@@ -0,0 +1,26 @@
+.\" Copyright (C) 2021 Stefan Roesch <shr@fb.com>
+.\"
+.\" SPDX-License-Identifier: LGPL-2.0-or-later
+.\"
+.TH io_uring_unregister_files 3 "November 15, 2021" "liburing-2.1" "liburing Manual"
+.SH NAME
+io_uring_unregister_files - unregister file descriptors
+.fi
+.SH SYNOPSIS
+.nf
+.BR "#include <liburing.h>"
+.PP
+.BI "int io_uring_unregister_files(struct io_uring *ring)"
+.PP
+.SH DESCRIPTION
+.PP
+The io_uring_unregister_files() function unregisters
+the file descriptors previously registered to the
+.I ring.
+
+.SH RETURN VALUE
+On success
+.BR io_uring_unregister_files (3)
+returns 0. On failure it returns -errno.
+.SH SEE ALSO
+.BR io_uring_register_files (3) \ No newline at end of file
diff --git a/man/io_uring_wait_cqe.3 b/man/io_uring_wait_cqe.3
new file mode 100644
index 0000000..85f6d78
--- /dev/null
+++ b/man/io_uring_wait_cqe.3
@@ -0,0 +1,33 @@
+.\" Copyright (C) 2021 Stefan Roesch <shr@fb.com>
+.\"
+.\" SPDX-License-Identifier: LGPL-2.0-or-later
+.\"
+.TH io_uring_wait_cqe 3 "November 15, 2021" "liburing-2.1" "liburing Manual"
+.SH NAME
+io_uring_wait_cqe - wait for one io_uring completion event
+.SH SYNOPSIS
+.nf
+.BR "#include <liburing.h>"
+.PP
+.BI "int io_uring_wait_cqe(struct io_uring *ring,"
+.BI " struct io_uring_cqe **cqe_ptr);"
+.fi
+.PP
+.SH DESCRIPTION
+.PP
+The io_uring_wait_cqe() function returns an IO completion from the
+queue belonging to the
+.I ring
+param, waiting for it if necessary. The
+.I cqe_ptr
+param is filled in on success.
+
+After the caller has submitted a request with io_uring_submit(), he can retrieve
+the completion with io_uring_wait_cqe().
+
+.SH RETURN VALUE
+On success
+.BR io_uring_wait_cqe (3)
+returns 0 and the cqe_ptr parm is filled in. On failure it returns -errno.
+.SH SEE ALSO
+.BR io_uring_submit (3), io_uring_wait_cqes(3) \ No newline at end of file
diff --git a/man/io_uring_wait_cqe_nr.3 b/man/io_uring_wait_cqe_nr.3
new file mode 100644
index 0000000..a3d9b56
--- /dev/null
+++ b/man/io_uring_wait_cqe_nr.3
@@ -0,0 +1,36 @@
+.\" Copyright (C) 2021 Stefan Roesch <shr@fb.com>
+.\"
+.\" SPDX-License-Identifier: LGPL-2.0-or-later
+.\"
+.TH io_uring_wait_cqe_nr 3 "November 15, 2021" "liburing-2.1" "liburing Manual"
+.SH NAME
+io_uring_wait_cqe_nr - wait for one or more io_uring completion events
+.SH SYNOPSIS
+.nf
+.BR "#include <liburing.h>"
+.PP
+.BI "int io_uring_wait_cqe_nr(struct io_uring *ring,"
+.BI " struct io_uring_cqe **cqe_ptr,"
+.BI " unsigned wait_nr)"
+.fi
+.PP
+.SH DESCRIPTION
+.PP
+The io_uring_wait_cqe_nr() function returns
+.I wait_nr
+IO completion events from the
+queue belonging to the
+.I ring
+param, waiting for it if necessary. The
+.I cqe_ptr
+param is filled in on success.
+
+After the caller has submitted a request with io_uring_submit(), he can retrieve
+the completion with io_uring_wait_cqe_nr().
+
+.SH RETURN VALUE
+On success
+.BR io_uring_wait_cqe_nr (3)
+returns 0 and the cqe_ptr parm is filled in. On failure it returns -errno.
+.SH SEE ALSO
+.BR io_uring_submit (3), io_uring_wait_cqes (3) \ No newline at end of file
diff --git a/man/io_uring_wait_cqe_timeout.3 b/man/io_uring_wait_cqe_timeout.3
new file mode 100644
index 0000000..d836352
--- /dev/null
+++ b/man/io_uring_wait_cqe_timeout.3
@@ -0,0 +1,39 @@
+.\" Copyright (C) 2021 Stefan Roesch <shr@fb.com>
+.\"
+.\" SPDX-License-Identifier: LGPL-2.0-or-later
+.\"
+.TH io_uring_wait_cqe_timeout 3 "November 15, 2021" "liburing-2.1" "liburing Manual"
+.SH NAME
+io_uring_wait_cqe_timeout - wait for one io_uring completion event with timeout
+.SH SYNOPSIS
+.nf
+.BR "#include <liburing.h>"
+.PP
+.BI "int io_uring_wait_cqe_timeout(struct io_uring *ring,"
+.BI " struct io_uring_cqe **cqe_ptr,"
+.BI " struct __kernel_timespec *ts)"
+.PP
+.SH DESCRIPTION
+.PP
+The io_uring_wait_cqe_timeout() function returns one IO completion from the
+queue belonging to the
+.I ring
+param, waiting for it if necessary or until the timeout
+.I ts
+expires.
+
+The
+.I cqe_ptr
+param is filled in on success.
+
+If
+.I ts
+is specified, the application does not need to call io_uring_submit (3) before
+calling io_uring_wait_cqes (3).
+
+.SH RETURN VALUE
+On success
+.BR io_uring_wait_cqes (3)
+returns 0 and the cqe_ptr parm is filled in. On failure it returns -errno.
+.SH SEE ALSO
+.BR io_uring_submit (3), io_uring_wait_cqe_timeout (3), io_uring_wait_cqe(3). \ No newline at end of file
diff --git a/man/io_uring_wait_cqes.3 b/man/io_uring_wait_cqes.3
new file mode 100644
index 0000000..5c732da
--- /dev/null
+++ b/man/io_uring_wait_cqes.3
@@ -0,0 +1,46 @@
+.\" Copyright (C) 2021 Stefan Roesch <shr@fb.com>
+.\"
+.\" SPDX-License-Identifier: LGPL-2.0-or-later
+.\"
+.TH io_uring_wait_cqes 3 "November 15, 2021" "liburing-2.1" "liburing Manual"
+.SH NAME
+io_uring_wait_cqes - wait for one or more io_uring completion events
+.SH SYNOPSIS
+.nf
+.BR "#include <liburing.h>"
+.PP
+.BI "int io_uring_wait_cqes(struct io_uring *ring,"
+.BI " struct io_uring_cqe **cqe_ptr,"
+.BI " unsigned wait_nr,"
+.BI " struct __kernel_timespec *ts,"
+.BI " sigset_t *sigmask)
+.fi
+.PP
+.SH DESCRIPTION
+.PP
+The io_uring_wait_cqes() function returns
+.I wait_nr
+IO completions from the queue belonging to the
+.I ring
+param, waiting for it if necessary or until the timeout
+.I ts
+expires. The
+.I sigmask
+specifies the set of signals to block. The prevailing signal mask is restored
+before returning.
+
+The
+.I cqe_ptr
+param is filled in on success.
+
+If
+.I ts
+is specified, the application does not need to call io_uring_submit (3) before
+calling io_uring_wait_cqes (3).
+
+.SH RETURN VALUE
+On success
+.BR io_uring_wait_cqes (3)
+returns 0 and the cqe_ptr parm is filled in. On failure it returns -errno.
+.SH SEE ALSO
+.BR io_uring_submit (3), io_uring_wait_cqe_timeout (3), io_uring_wait_cqe(3).