-
Max Kellermann authored
This is the final piece of the series to establish io_uring support on Linux. MPD doesn't need io_uring for its efficient bulk I/O support, but to allow file I/O to be cancelled. This is a big problem on CIFS/NFS mounts where processes sleep uninterruptable if the file server disappears, deadlocking MPD. With io_uring, a flaky NFS connection allows MPD to continue to work (even though there are still deadlocks inside MPD which need to be addressed). This plugin does not yet use cancellable `open()` using `IORING_OP_OPENAT`. This will be implemented later. Lots of other optimization opportunities for io_uring are still missing as well - for example the database update could benefit a lot, but unfortunately, io_uring doesn't have `readdir()` support just yet.
dae8da70
| Name |
Last commit
|
Last update |
|---|---|---|
| .github | ||
| android | ||
| build | ||
| doc | ||
| python/build | ||
| src | ||
| systemd | ||
| test | ||
| win32 | ||
| .gitignore | ||
| .travis.yml | ||
| AUTHORS | ||
| COPYING | ||
| NEWS | ||
| README.md | ||
| meson.build | ||
| meson_options.txt | ||
| mpd.svg | ||
| valgrind.suppressions |