]> granicus.if.org Git - zfs/commit
zio_dva_throttle_done() should allow zinjected ZIO
authorsanjeevbagewadi <sanjeev.bagewadi@gmail.com>
Thu, 10 Aug 2017 22:53:40 +0000 (04:23 +0530)
committerTony Hutter <hutter2@llnl.gov>
Mon, 21 Aug 2017 23:41:22 +0000 (16:41 -0700)
commit2d9b57d39fde8906ab07fbb130412970f7801329
tree1db7d3efadb750b1eadab47d4ed15d9ccb441681
parent4bdb8fcfa8526e9fcbd5a6e988e04ae6a86b552a
zio_dva_throttle_done() should allow zinjected ZIO

If fault injection is enabled, the ZIO_FLAG_IO_RETRY could be set by
zio_handle_device_injection() to generate the FMA events and update
stats. Hence, ignore the flag and process such zios.

A better fix would be to add another flag in the zio_t to indicate that
the zio is failed because of a zinject rule. However, considering the
fact that we do this in debug bits, we could do with the crude check
using the global flag zio_injection_enabled which is set to 1 when
zinject records are added.

Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: Sanjeev Bagewadi <sanjeev.bagewadi@gmail.com>
Closes #6383
Closes #6384
module/zfs/zio.c