stable.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Patch "block: fix blk_integrity_register to use template's interval_exp if not 0" has been added to the 4.10-stable tree
@ 2017-05-16 10:52 gregkh
  0 siblings, 0 replies; only message in thread
From: gregkh @ 2017-05-16 10:52 UTC (permalink / raw)
  To: snitzer, axboe, gregkh, martin.petersen, mpatocka; +Cc: stable, stable-commits


This is a note to let you know that I've just added the patch titled

    block: fix blk_integrity_register to use template's interval_exp if not 0

to the 4.10-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     block-fix-blk_integrity_register-to-use-template-s-interval_exp-if-not-0.patch
and it can be found in the queue-4.10 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@vger.kernel.org> know about it.


>From 2859323e35ab5fc42f351fbda23ab544eaa85945 Mon Sep 17 00:00:00 2001
From: Mike Snitzer <snitzer@redhat.com>
Date: Sat, 22 Apr 2017 17:22:09 -0400
Subject: block: fix blk_integrity_register to use template's interval_exp if not 0

From: Mike Snitzer <snitzer@redhat.com>

commit 2859323e35ab5fc42f351fbda23ab544eaa85945 upstream.

When registering an integrity profile: if the template's interval_exp is
not 0 use it, otherwise use the ilog2() of logical block size of the
provided gendisk.

This fixes a long-standing DM linear target bug where it cannot pass
integrity data to the underlying device if its logical block size
conflicts with the underlying device's logical block size.

Reported-by: Mikulas Patocka <mpatocka@redhat.com>
Signed-off-by: Mike Snitzer <snitzer@redhat.com>
Acked-by: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: Jens Axboe <axboe@fb.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

---
 block/blk-integrity.c |    3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

--- a/block/blk-integrity.c
+++ b/block/blk-integrity.c
@@ -412,7 +412,8 @@ void blk_integrity_register(struct gendi
 
 	bi->flags = BLK_INTEGRITY_VERIFY | BLK_INTEGRITY_GENERATE |
 		template->flags;
-	bi->interval_exp = ilog2(queue_logical_block_size(disk->queue));
+	bi->interval_exp = template->interval_exp ? :
+		ilog2(queue_logical_block_size(disk->queue));
 	bi->profile = template->profile ? template->profile : &nop_profile;
 	bi->tuple_size = template->tuple_size;
 	bi->tag_size = template->tag_size;


Patches currently in stable-queue which might be from snitzer@redhat.com are

queue-4.10/block-fix-blk_integrity_register-to-use-template-s-interval_exp-if-not-0.patch
queue-4.10/dm-crypt-rewrite-wipe-key-in-crypto-layer-using-random-data.patch
queue-4.10/dm-era-save-spacemap-metadata-root-after-the-pre-commit.patch
queue-4.10/dm-rq-check-blk_mq_register_dev-return-value-in-dm_mq_init_request_queue.patch
queue-4.10/dm-thin-fix-a-memory-leak-when-passing-discard-bio-down.patch

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2017-05-16 10:52 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-05-16 10:52 Patch "block: fix blk_integrity_register to use template's interval_exp if not 0" has been added to the 4.10-stable tree gregkh

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).