Reviewed by: Brad Lewis <[email protected]> Reviewed by: Matt Ahrens <[email protected]> Reviewed by: Sara Hartse <[email protected]>
While running the zfs test suite for an unrelated change, I observed a crash. The problem is that when we are opening the pool, spa_load_impl() calls dmu_objset_find(dsl_destroy_inconsistent) before calling spa_spawn_aux_ threads(). dsl_destroy_inconsistent() may destroy a clone, which does a sync task which calls dsl_async_clone_destroy(), which calls zthr_wakeup(spa->spa_livelist_delete_zthr). But spa_livelist_delete_zthr is not yet initialized (it will be initialized by the call to spa_spawn_aux_threads()). > ::status debugging crash dump vmcore.0 (64-bit) from operating system: 5.11 origin/os-platform/dlpx-os-gate/___master___/no-check/mahrens/devops-gate/master/zfs-precommit/zap_prefetch/7fc 3634023cde2fa7188cab6c091e62bf4434c31-0-g7fc36340 (i86pc) image uuid: 0767ca03-f223-eeca-c337-c33e6ef95a44 panic message: BAD TRAP: type=e (#pf Page fault) rp=ffffff000df776f0 addr=8 occurred in module "unix" due to a NULL pointer de reference dump content: kernel pages only > ::stack mutex_enter+0xb() dsl_async_clone_destroy+0x1a2(ffffff03ab53a800, ffffff03ab1d5900) dsl_destroy_head_sync_impl+0x2e1(ffffff03ab53a800, ffffff03ab1d5900) dsl_destroy_head_sync+0x73(ffffff000e08d400, ffffff03ab1d5900) dsl_sync_task_sync+0x10a(ffffff000e08d2b0, ffffff03ab1d5900) dsl_pool_sync+0x3a3(ffffff0390be0d00, e8) spa_sync_iterate_to_convergence+0xf7(ffffff038954c000, ffffff03ab1d5a00) spa_sync+0x272(ffffff038954c000, e8) txg_sync_thread+0x297(ffffff0390be0d00) thread_start+8() Upstream bug: DLPX-58626 You can view, comment on, or merge this pull request online at: https://github.com/openzfs/openzfs/pull/675 -- Commit Summary -- * 9682 page fault in dsl_async_clone_destroy() while opening pool -- File Changes -- M usr/src/cmd/zdb/zdb.c (5) M usr/src/uts/common/fs/zfs/spa.c (13) -- Patch Links -- https://github.com/openzfs/openzfs/pull/675.patch https://github.com/openzfs/openzfs/pull/675.diff -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/openzfs/openzfs/pull/675 ------------------------------------------ openzfs: openzfs-developer Permalink: https://openzfs.topicbox.com/groups/developer/Tbfe9f5977a0864f7-M2e1a2c7671616fe5c974a80f Delivery options: https://openzfs.topicbox.com/groups/developer/subscription
