So, I've been working on a script (
http://code.google.com/p/clairvoyant/) to facilitate backup to a ZFS formatted sparsebundle disk image, and once a week the script kicks off a scrub (as part or standard filesystem check). The scrub backrounds and returns control back to the script, which proceeds to attempt an unmount/remount of the file system (to ensure a clean mount) - this behavior was roughly consistent with what was happening with other synchronous fsck tools. I've since opted to skip the scrub (noting in the log that a scrub should be performed), but before I modified the scripts, issuing a 'zfs unmount' while a 'zpool scrub' was happening in the background resulted in a nasty kernel panic (it also explained why my Mac rebooted overnight, when the first weekly scrub was attempted).
The summary of the KP is below:
- Code: Select all
Fri Dec 7 15:20:19 2012
panic(cpu 0 caller 0xffffff7f9cbb01b7): "/staging/zevo/src/uts/common/fs/zfs/zil.c:572 ZFS assertion failed: !keep_first"@/staging/zevo/src/uts/darwin/os/printf.c:43
Kernel Extensions in backtrace:
com.getgreenbytes.filesystem.zfs(2012.9.23)[04497DBB-8849-31D8-8496-BE10E5711C53]@0xffffff7f9cba5000->0xffffff7f9cd3ffff
dependency: com.apple.iokit.IOStorageFamily(1.8)[5BA4CD36-E96D-3A9E-ADFF-A863BBD63BC7]@0xffffff7f9cb78000
BSD process name corresponding to current thread: zfs
The full stack trace is available at
https://gist.github.com/4238919Regards,
Jonathan