Add missing `register_files` APIs
This PR adds two missing ring calls, io_uring_register_files_tags and io_uring_register_files_update_tag.
Tests have been added and confirmed working, I also adjusted part of the docs for register_files to more accurately note the behaviour of the call.
I thought I could get away with not waiting on the completions but I guess CI is just slow enough to run into the completions not being registered in time. Should be fixed now along with linting.
@quininer can you cancel the last run, it is deadlocked and will just be waiting forever, I've changed the way it waits for completions to use an event FD which should reliably wake up.
Hopefully the last fix on the tests :crossed_fingers:
You can also create new IoUring instances for specific test cases.
I was hoping to avoid that, we can give it a go, but I believe it shouldn't be timing out the runners like that with the eventfd approach so will need to look into it a bit more.