From: Pavel Zakharov Date: Fri, 16 Dec 2016 19:20:15 +0000 (-0500) Subject: OpenZFS 9191 - dump vdev tree to zfs_dbgmsg when spa load fails due to missing log... X-Git-Tag: zfs-0.8.0-rc1~163 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=db7d07e14ba4b964f64058e2c3d121d32f8d53c4;p=zfs OpenZFS 9191 - dump vdev tree to zfs_dbgmsg when spa load fails due to missing log devices Add vdev_print_tree() in spa_check_for_missing_logs() when some log devices are missing to ease debugging Authored by: Pavel Zakharov Reviewed by: George Wilson Reviewed by: Prakash Surya Reviewed by: Matt Ahrens Reviewed-by: Giuseppe Di Natale Reviewed-by: George Melikov Approved by: Robert Mustacchi Ported-by: Brian Behlendorf OpenZFS-issue: https://illumos.org/issues/9191 OpenZFS-commit: https://github.com/openzfs/openzfs/commit/c5c02e5 Closes #7531 --- diff --git a/module/zfs/spa.c b/module/zfs/spa.c index 3177f9649..dba6efe7b 100644 --- a/module/zfs/spa.c +++ b/module/zfs/spa.c @@ -1888,6 +1888,7 @@ spa_check_for_missing_logs(spa_t *spa) if (idx > 0) { spa_load_failed(spa, "some log devices are missing"); + vdev_dbgmsg_print_tree(rvd, 2); return (SET_ERROR(ENXIO)); } } else { @@ -1899,6 +1900,7 @@ spa_check_for_missing_logs(spa_t *spa) spa_set_log_state(spa, SPA_LOG_CLEAR); spa_load_note(spa, "some log devices are " "missing, ZIL is dropped."); + vdev_dbgmsg_print_tree(rvd, 2); break; } }