Solved zpool freeing free segment

Hi,

After a panic/reboot the zpool on my system has gone corrupt. I've been able to boot up the system by disabling ZFS and have been trying to recover the data as I don't have a backup. Upon import (even with -o readonly=on) the system panics.

Code:
panic: solaris assert: sm->sm_space == total (0x1e8a0a000 == 0x1e8a02000), file: /usr/src/sys/modules/zfs/../../cddl/contrib/opensolaris/uts/common/fs/zfs/space_map.c, line: 549
cpuid = 1
KDB: stack backtrace:
#0 0xffffffff808e7e90 at kdb_backtrace+0x60
#1 0xffffffff808af975 at panic+0x155
#2 0xffffffff81b9723f at assfail3+0x2f
#3 0xffffffff81aac9e2 at space_map_sync+0x362
#4 0xffffffff81a95802 at metaslab_sync+0x522
#5 0xffffffff81ab286b at vdev_sync+0xcb
#6 0xffffffff81aa4afb at spa_sync+0x5db
#7 0xffffffff81aad925 at txg_sync_thread+0x375
#8 0xffffffff80881a4a at fork_exit+0x9a
#9 0xffffffff80c75a6e at fork_trampoline+0xe

I've added the following to /boot/loader.conf:

Code:
set vfs.zfs.recover=1
set vfs.zfs.debug=1

zdb -L passes without errors so it looks like there is a problem with the space maps.

Code:
# zdb -c datapool

Traversing all blocks to verify metadata checksums and verify nothing leaked ...

error: zfs: freeing free segment (offset=27517341696 size=32768)
Abort (core dumped)

Any help to recover as much data as possible would be great. Can't believe it is impossible to recover any data from the zpool.
 
Just to be safe, you might want to run # zpool labelclear <device> if you plan on recreating your zpool with the exact same name.
 
Back
Top