bugzilla-daemon at defect.opensolaris.org
2008-Jun-11 11:13 UTC
[Bug 2207] New: scrub/resilver says pools have errors when key not present
http://defect.opensolaris.org/bz/show_bug.cgi?id=2207 Summary: scrub/resilver says pools have errors when key not present Classification: Development Product: zfs-crypto Version: unspecified Platform: Other OS/Version: Other Status: ACCEPTED Severity: critical Priority: P2 Component: other AssignedTo: darrenm at opensolaris.org ReportedBy: darrenm at opensolaris.org QAContact: hua.tang at sun.com CC: zfs-crypto-discuss at opensolaris.org Estimated Hours: 0.0 If a pool or dataset key isn''t present when a scrub/resilver is done the encrypted datasets using that key will be marked as having errors. They don''t actually have errors it is just that zio_decrypt_data() returned a failure. Since scrub/resilver don''t actually need to decrypt the data, they just need to verify the checksum. We can ensure that ZIO_STAGE_READ_DECRYPT doesn''t get added to the pipeline if ZIO_FLAG_SCRUB_THREAD is set. In theory this should be possible for compression as well however when doing so I got the following panic: panic[cpu1]/thread=ffffff00050b1c80: assertion failed: bp == 0L || (-(-(((((((&((zio)->io_bp)->blk_dva[0]))->dva_word [1]) >> (63)) & ((1ULL << (1)) - 1)) ? (1ULL << 9) : (((((((zio)->io_bp)->blk_pr op[0]) >> (16)) & ((1ULL << (16)) - 1)) + (1)) << (9)))) & -(align))) =zio->io _size, file: ../../common/fs/zfs/zio.c, line: 1994 ffffff00050b17e0 genunix:assfail+7e () ffffff00050b1840 zfs:zio_vdev_io_start+2bf () ffffff00050b1880 zfs:zio_execute+bb () ffffff00050b18a0 zfs:zio_nowait+11 () ffffff00050b18e0 zfs:vdev_mirror_io_start+109 () ffffff00050b1940 zfs:zio_vdev_io_start+234 () ffffff00050b1980 zfs:zio_execute+bb () ffffff00050b19a0 zfs:zio_nowait+11 () ffffff00050b1a20 zfs:spa_scrub_io_start+11a () ffffff00050b1a90 zfs:spa_scrub_cb+1fd () ffffff00050b1af0 zfs:traverse_callback+10e () ffffff00050b1b90 zfs:traverse_segment+410 () ffffff00050b1be0 zfs:traverse_more+74 () ffffff00050b1c60 zfs:spa_scrub_thread+219 () ffffff00050b1c70 unix:thread_start+8 () So for now this fix is just focusing on the current needs of crypto. I''ve brought up the issue for discussion with the ZFS team. -- Configure bugmail: http://defect.opensolaris.org/bz/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
bugzilla-daemon at defect.opensolaris.org
2008-Jun-11 11:17 UTC
[Bug 2207] scrub/resilver says pools have errors when key not present
http://defect.opensolaris.org/bz/show_bug.cgi?id=2207 Darren J Moffat <darrenm at opensolaris.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|ACCEPTED |CLOSED Resolution| |FIXINSOURCE -- Configure bugmail: http://defect.opensolaris.org/bz/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.