datto / dattobd

kernel module for taking block-level snapshots and incremental backups of Linux block devices
GNU General Public License v2.0
561 stars 120 forks source link

Closing snap handle #311

Closed Swistusmen closed 1 year ago

Swistusmen commented 1 year ago

I have replaced a macro with the new one, generally it should work as for_each for bios (block input output chunk). Generally bios are created by filesystem and are chunks of information which should be saved in memory. Than this bios are naturally passed to bio-layer which is layer of abstraction in linux which handles saving them into the memory. Dattobd spies on this saves and for every bio which should be saved into a memory, creates a copy which is than saved into a cow file. So macro which we used to use, which we thought should work as for_each, didn't work correctly on LVM because it can manage bios differently.

Source of knowledge: https://www.dcache.org/manuals/2012/workshop/slides/chris-block-devices.pdf

lukaszfulek commented 1 year ago

And you also have some conflicts.