-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.csiden.org/r/182/
-----------------------------------------------------------

Review request for OpenZFS Developer Mailing List and Christopher Siden.


Bugs: 5746
    https://www.illumos.org/projects/illumos-gate//issues/5746


Repository: illumos-gate


Description
-------

5746 more checksumming in zfs send
Reviewed by: George Wilson <[email protected]\>
Reviewed by: Christopher Siden <[email protected]\>

Original author: Matthew Ahrens

Currently the DRR_END record in zfs send contains the only checksum for a send 
stream. In the current world this is a problem because you could get to the end 
of a many hour send only to find out a bit error occurred somewhere in the 
stream and threw off the checksum. Once resumable send/recv is integrated, this 
will be a bigger problem because when a send is interrupted we lose the 
checksumming information.

The solution is to checksum every record so we can detect checksum errors 
quickly and know exactly how much of our stream was properly checksummed when 
the send is interrupted. There is already unused space in all records except 
DRR_BEGIN where a checksum could fit and keep the stream backwards compatible. 
Also since a running checksum is already being calculated this should have 
minimal impact on performance.


Diffs
-----

  usr/src/uts/common/fs/zfs/sys/zio_checksum.h 
0956c04ab1b43877fcc327d6c9e17d76ac8dbb7d 
  usr/src/uts/common/fs/zfs/sys/zfs_ioctl.h 
62f6ff997d16350ecc07a4f4a9012192d5de8afb 
  usr/src/uts/common/fs/zfs/sys/spa.h d5a8e7f2fd78f49ed7ecb79c2f50cc1e8f13c188 
  usr/src/uts/common/fs/zfs/dmu_send.c 3c156054877bd29ad912e075666cc2f2ed2aadce 
  usr/src/lib/libzfs/common/libzfs_sendrecv.c 
c4944438aa2cdcb751ae04a73be52ce9d7b2cef4 
  usr/src/cmd/zstreamdump/zstreamdump.c 
d99d8014f049def80fafae01a7408b199d6c0794 

Diff: https://reviews.csiden.org/r/182/diff/


Testing
-------

zfs test suite
ztest
manual testing

http://jenkins/job/zfs-precommit/1912/


Thanks,

Matthew Ahrens

_______________________________________________
developer mailing list
[email protected]
http://lists.open-zfs.org/mailman/listinfo/developer

Reply via email to