Hi list, I just learned about Stratis, and it is a very exciting project! The idea of ZFS-like features, while preserving proper layering in the I/O stack, in a single, simple package is really cool.
I read the Stratis PDF documentation and, if I understand it properly, you plan to use dm-integrity to checksum blocks on the I/O device. I wonder if you considered extending current MDRAID code to integrate checksumming capability: in this manner, you not only "shave off" a I/O layer (no need of dm-integrity on the single block devices), but *any* new MD array become automatically checksum-protected.
Some years ago, this very idea was heavily debated on MDRAID mailing list. At the time BTRFS looked "almost ready", so the MDADM maintainer decided that disk's own hardware ECC was enough to protect from the most likely problems. Maybe this can be right time to revisit this position?
Thanks.