bfs
bfs copied to clipboard
io_uring
Once https://lkml.org/lkml/2021/1/23/76 or something like it lands, we can use it to do async openat()/readdir(). This is likely to be a better approach than https://github.com/tavianator/bfs/issues/46.
It does mean we'll need to do our own readdir() wrapper over getdents(). Looks like I'll be doing https://github.com/tavianator/bfs/issues/9#issuecomment-201044287 after all.
This will be in LInux 5.17 it looks like: https://lore.kernel.org/io-uring/[email protected]/T/
So io_uring still does not have getdents()
support: https://lore.kernel.org/io-uring/[email protected]/
But doing something similar in userspace seems to work well: https://github.com/tavianator/bfs/tree/ioq. Very much a work-in-progress since open FD accounting is still broken and some of bfs is not thread-safe (e.g. lazy statics and use of fork()
). Oh and it breaks -s
.