I tried a small test where I suspended and resumed a mirrored device without IO going on.
My expectation was that the mirror set will not get re-synced but unfortunately it did.
According the documentation the mirror log is kept on disk when creating a mirror logical device with 'disk' log type as an input parameter.
I looked at the code and I didn't see where the sync_bits are being written to the disk or read from the disk but only the number of regions is being saved.
How should a mirror device survive reboots/crashes without syncing the entire mirror set?
BTW – another problem is that after reboot the created logical device disappears, is there an easy way to keep it persistent or should I create at each boot?