Skip to content

v0.3.0

Latest
Compare
Choose a tag to compare
@tchaloupka tchaloupka released this 06 Nov 20:17
· 20 commits to master since this release

Modifications:

  • added next() as a method to return reference to new SubmissionEntry
  • added submitAndWait to optimize out some unnecessary branches
  • added flush that just adjusts index visible by kernel (useable when kernel itself is polling the queue)
  • update to latest Linux kernel 5.15 changes including helper functions to setup operations
  • changed methods to work with provided buffers (5.7)
  • switch to github actions
  • some additional small fixes and tweaks
  • removed static assert for unsupported platform using just version (linux) to hide the implementation for them
  • changed prep methods to allow new chain syntax:
io.next
    .prepRecv(ctx.fd, grid, len)
    .setUserDataRaw(someData)
    .flags |= SubmissionEntryFlags.BUFFER_SELECT;
  • added probe methods (static and directly on Uring instance) to check what operations kernel actually supports (available from 5.6)
auto prob = probe(); // creates temporary uring instance
assert(prob);
assert(prob.error == 0);
assert(prob.isSupported(Operation.RECV));

Fixes:

  • fixed enum member name to be on par with the others
  • some minor fixes