From: Mikulas Patocka <[email-masked]>

If we are creating snapshot with memory-stored exception store, fail if
the user didn't specify chunk size. Zero chunk size would probably crash
a lot of places in the rest of snapshot code.

Signed-off-by: Mikulas Patocka <[email-masked]>
Reviewed-by: Jonathan Brassow <[email-masked]>
Reviewed-by: Mike Snitzer <[email-masked]>

---
 drivers/md/dm-snap.c |    5 +++++
 1 file changed, 5 insertions(+)

Index: linux-2.6.31/drivers/md/dm-snap.c
===================================================================
--- linux-2.6.31.orig/drivers/md/dm-snap.c
+++ linux-2.6.31/drivers/md/dm-snap.c
@@ -668,6 +668,11 @@ static int snapshot_ctr(struct dm_target
 	bio_list_init(&s->queued_bios);
 	INIT_WORK(&s->queued_bios_work, flush_queued_bios);
 
+	if (!s->store->chunk_size) {
+		ti->error = "Chunk size not set";
+		goto bad_load_and_register;
+	}
+
 	/* Add snapshot to the list of snapshots for this origin */
 	/* Exceptions aren't triggered till snapshot_resume() is called */
 	if (register_snapshot(s)) {