From: Milan Broz Disable barriers in dm-crypt because of current workqueue processing can reorder requests. This must be addresed later but for now disabling barriers is needed to prevent data corruption. Signed-off-by: Milan Broz Signed-off-by: Alasdair G Kergon Cc: Jens Axboe Signed-off-by: Andrew Morton --- drivers/md/dm-crypt.c | 3 +++ 1 files changed, 3 insertions(+) diff -puN drivers/md/dm-crypt.c~dm-crypt-disable-barriers drivers/md/dm-crypt.c --- a/drivers/md/dm-crypt.c~dm-crypt-disable-barriers +++ a/drivers/md/dm-crypt.c @@ -954,6 +954,9 @@ static int crypt_map(struct dm_target *t struct crypt_config *cc = ti->private; struct crypt_io *io; + if (bio_barrier(bio)) + return -EOPNOTSUPP; + io = mempool_alloc(cc->io_pool, GFP_NOIO); io->target = ti; io->base_bio = bio; _