From 884fa53d243a3c8f551f64a2d20aca01322ff5b2 Mon Sep 17 00:00:00 2001 From: Rob Norris Date: Wed, 28 Aug 2024 11:07:14 +1000 Subject: [PATCH] zio_resume: log when unsuspending the pool When reviewing logs after a failure, its useful to see where unsuspend/resume was requested. Signed-off-by: Rob Norris Sponsored-by: Klara, Inc. Sponsored-by: Wasabi Technology, Inc. --- module/zfs/zio.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/module/zfs/zio.c b/module/zfs/zio.c index e4ccd144f0..53992931e0 100644 --- a/module/zfs/zio.c +++ b/module/zfs/zio.c @@ -2553,7 +2553,7 @@ zio_suspend(spa_t *spa, zio_t *zio, zio_suspend_reason_t reason) if (reason != ZIO_SUSPEND_MMP) { cmn_err(CE_WARN, "Pool '%s' has encountered an uncorrectable " - "I/O failure and has been suspended.\n", spa_name(spa)); + "I/O failure and has been suspended.", spa_name(spa)); } (void) zfs_ereport_post(FM_EREPORT_ZFS_IO_FAILURE, spa, NULL, @@ -2589,6 +2589,10 @@ zio_resume(spa_t *spa) * Reexecute all previously suspended i/o. */ mutex_enter(&spa->spa_suspend_lock); + if (spa->spa_suspended != ZIO_SUSPEND_NONE) + cmn_err(CE_WARN, "Pool '%s' was suspended and is being " + "resumed. Failed I/O will be retried.", + spa_name(spa)); spa->spa_suspended = ZIO_SUSPEND_NONE; cv_broadcast(&spa->spa_suspend_cv); pio = spa->spa_suspend_zio_root;