From 566684ac9fc98c7519aaafa42f88e11372e43899 Mon Sep 17 00:00:00 2001 From: Vito Caputo Date: Sun, 15 Aug 2021 17:15:51 -0700 Subject: 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... --- src/iou.c | 11 +++++++++++ src/iou.h | 1 + 2 files changed, 12 insertions(+) (limited to 'src') 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 -- cgit v1.2.3