on 20/11/2012 17:06 Andriy Gapon said the following: > on 20/11/2012 16:59 Andrei Lavreniyuk said the following: >>>> Sorry to make you jump through so many hoops. >>>> Now that I see that the probed config is entirely correct, the problem >>>> appears to >>>> be quite obvious: vdev_alloc is not able to properly use spa_version in >>>> this >>>> context because spa_ubsync is not initialized yet. >>>> >>>> Let me think about how to fix this. >>> >>> I hope that the following simple patch should fix the problem: >>> http://people.freebsd.org/~avg/spa_import_rootpool.version.diff >> >> >> At mount system trap and reboot. >> > > Unexpected. Can you catch the backtrace of the panic? > If you have it on the screen. > >
Ah, found another bogosity in the code: --- a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c +++ b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c @@ -3925,8 +4117,6 @@ spa_import_rootpool(const char *name) return (error); } - spa_history_log_version(spa, LOG_POOL_IMPORT); - spa_config_enter(spa, SCL_ALL, FTAG, RW_WRITER); vdev_free(rvd); spa_config_exit(spa, SCL_ALL, FTAG); This previously "worked" only because the pool version was zero and thus the action was a NOP anyway. -- Andriy Gapon _______________________________________________ freebsd-current@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"