[dm-devel] [PATCH 10/11] bottom-layer barrier support

Mikulas Patocka mpatocka at redhat.com
Fri Apr 10 05:15:24 UTC 2009


Flush support for dm-crypt target.

Signed-off-by: Mikulas Patocka <mpatocka at redhat.com>

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

Index: linux-2.6.30-rc1-devel/drivers/md/dm-crypt.c
===================================================================
--- linux-2.6.30-rc1-devel.orig/drivers/md/dm-crypt.c	2009-04-10 06:28:45.000000000 +0200
+++ linux-2.6.30-rc1-devel/drivers/md/dm-crypt.c	2009-04-10 06:33:42.000000000 +0200
@@ -1168,6 +1168,7 @@ static int crypt_ctr(struct dm_target *t
 		goto bad_crypt_queue;
 	}
 
+	ti->num_flush_requests = 1;
 	ti->private = cc;
 	return 0;
 
@@ -1226,6 +1227,12 @@ static int crypt_map(struct dm_target *t
 {
 	struct dm_crypt_io *io;
 
+	if (unlikely(bio_empty_barrier(bio))) {
+		struct crypt_config *cc = ti->private;
+		bio->bi_bdev = cc->dev->bdev;
+		return DM_MAPIO_REMAPPED;
+	}
+
 	io = crypt_io_alloc(ti, bio, bio->bi_sector - ti->begin);
 
 	if (bio_data_dir(io->base_bio) == READ)




More information about the dm-devel mailing list