sync and async zio-s share the same task queues
ZFS VDEV queuing mechanism is designed to prioritize sync I/O requests in order to minimize their latency and to reduce the effect of async I/O on the sync I/O.
But sync and async zio-s (both read and write) share the same task queues, so async zio-s can defeat the vdev queuing at a different level.
This is especially true when the zio-s require a lot of computational resources because of compression and cryptographic checksums.
My first idea was to use the "high" task queues for the sync zio-s, but I am not sure if those are properly sized for the potential high bandwidth of such requests.