dm exception store: add merge specific methods
authorMikulas Patocka <mpatocka@redhat.com>
Thu, 10 Dec 2009 23:52:29 +0000 (23:52 +0000)
committerAlasdair G Kergon <agk@redhat.com>
Thu, 10 Dec 2009 23:52:29 +0000 (23:52 +0000)
commit4454a6216f75a9ef8c4bd0a65e34b101f725ef1e
tree25b97b629954702692397072dd6cd20f34221b5c
parent615d1eb9cad9b34ed17c18c604254e8db533ac6f
dm exception store: add merge specific methods

Add functions that decide how many consecutive chunks of snapshot to
merge back into the origin next and to update the metadata afterwards.

prepare_merge provides a pointer to the most recent still-to-be-merged
chunk and returns how many previous ones are consecutive and can be
processed together.

commit_merge removes the nr_merged most-recent chunks permanently from
the exception store.  The number must not exceed that returned by
prepare_merge.

Introduce NUM_SNAPSHOT_HDR_CHUNKS to show where the snapshot header
chunk is accounted for.

Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
Reviewed-by: Mike Snitzer <snitzer@redhat.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
drivers/md/dm-exception-store.h
drivers/md/dm-snap-persistent.c