HomeFreeBSD

Fix for "Reduce latency effects of non-interactive I/O"

Description

Fix for "Reduce latency effects of non-interactive I/O"

It was found that setting min_active tunables for non-interactive I/Os
makes them stuck. It is caused by zfs_vdev_nia_delay, that can never
be reached if we never issue any I/Os due to min_active set to zero.

Fix this by issuing at least one non-interactive I/O at a time when
there are no interactive I/Os. When there are interactive I/Os, zero
min_active allows to completely block any non-interactive I/O. It may
min_active starvation in some scenarios, but who we are to deny foot
shooting?

Reviewed-by: George Melikov <mail@gmelikov.ru>
Reviewed-by: Ryan Moeller <ryan@iXsystems.com>
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: Alexander Motin <mav@FreeBSD.org>
Closes #11261

Details

Provenance
mavAuthored on Dec 3 2020, 6:02 PM
GitHub <noreply@github.com>Committed on Dec 3 2020, 6:02 PM
Parents
rG9109b89cd767: Add compatibility for busybox mktemp
Branches
Unknown
Tags
Unknown