summaryrefslogtreecommitdiff
path: root/src/iou.h
AgeCommit message (Collapse)Author
2022-03-08*: update copyright notices to encompass 2022HEADmasterVito Caputo
Mechanical change, not that there's been any significant changes in 2022 yet.
2022-03-08iou: s/entries/n_entries/ in iou_resize()Vito Caputo
Mechanical rename for clarity and consistency sake
2021-08-24iou: introduce iou_async() for threadingVito Caputo
This is a preliminary implementaion of an iou-abstracted thread pool. Two callbacks are provided to iou_async(): async_cb: Called by a worker thread and must be carefully written for concurrent execution. completion_cb: Called by iou_run() after a thread has finished with async_cb(). As completion_cb() is called in the iou_run() context, assuming the caller is always entering iou_run() from the main thread, it may be viewed as a continuation point for the async work reentering the serial execution flow. At this time every iou_new() will create two worker threads. In the future it may just create a thread per core or something like that.
2021-08-15iou: add iou_ring() iou->ring accessorVito Caputo
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...
2020-11-07iou: initial commitVito Caputo
This implements a barebones IO-oriented callback scheduler built atop the new kernel io-uring interface via liburing. There's not much going on here. The caller must still use liburing for preparing the SQEs in iou_op_t operations allocated via iou_op_new(), but that's basically all that's needed from liburing.
© All Rights Reserved