]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
dm-integrity: set dma_alignment limit in io_hints
authorKeith Busch <kbusch@kernel.org>
Thu, 10 Nov 2022 18:45:00 +0000 (10:45 -0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 2 Dec 2022 16:43:16 +0000 (17:43 +0100)
[ Upstream commit 29aa778bb66795e6a78b1c99beadc83887827868 ]

This device mapper needs bio vectors to be sized and memory aligned to
the logical block size. Set the minimum required queue limit
accordingly.

Signed-off-by: Keith Busch <kbusch@kernel.org>
Reviewed-by: Mike Snitzer <snitzer@kernel.org>
Link: https://lore.kernel.org/r/20221110184501.2451620-5-kbusch@meta.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/md/dm-integrity.c

index aaf2472df6e58d4ca47119098c069a0ae3b64875..e1e7b205573f88c3ea29b7d6aedea44dce558680 100644 (file)
@@ -3370,6 +3370,7 @@ static void dm_integrity_io_hints(struct dm_target *ti, struct queue_limits *lim
                limits->logical_block_size = ic->sectors_per_block << SECTOR_SHIFT;
                limits->physical_block_size = ic->sectors_per_block << SECTOR_SHIFT;
                blk_limits_io_min(limits, ic->sectors_per_block << SECTOR_SHIFT);
+               limits->dma_alignment = limits->logical_block_size - 1;
        }
 }