summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorVito Caputo <vcaputo@pengaru.com>2021-08-15 17:15:51 -0700
committerVito Caputo <vcaputo@pengaru.com>2021-08-15 17:15:51 -0700
commit566684ac9fc98c7519aaafa42f88e11372e43899 (patch)
tree263f1f2d7dcf1e21d9e68a53861bf678bd6a1d09 /src
parentc7d7e01bf5da362c4a8065efedc6dc7836471f61 (diff)
iou: add iou_ring() iou->ring accessor
To enable direct use of more liburing helpers, we need to make the ring struct available to external callers. The immediate impetus for adding this is registering files...
Diffstat (limited to 'src')
-rw-r--r--src/iou.c11
-rw-r--r--src/iou.h1
2 files changed, 12 insertions, 0 deletions
diff --git a/src/iou.c b/src/iou.c
index 6a07853..b7b83e7 100644
--- a/src/iou.c
+++ b/src/iou.c
@@ -243,3 +243,14 @@ int iou_resize(iou_t *iou, unsigned entries)
return io_uring_queue_init(entries, &iou->ring, 0);
}
+
+
+/* Accessor for getting at the underlying io_uring struct for calling
+ * liburing helpers directly against, use with care.
+ */
+struct io_uring * iou_ring(iou_t *iou)
+{
+ assert(iou);
+
+ return &iou->ring;
+}
diff --git a/src/iou.h b/src/iou.h
index 0c7c5c2..6609e81 100644
--- a/src/iou.h
+++ b/src/iou.h
@@ -35,5 +35,6 @@ int iou_flush(iou_t *iou);
int iou_run(iou_t *iou);
int iou_quit(iou_t *iou);
int iou_resize(iou_t *iou, unsigned entries);
+struct io_uring * iou_ring(iou_t *iou);
#endif
© All Rights Reserved