If the flag SB_FLAG_RECALCULATE is present in the superblock, but it was not specified on the command line (i.e. ic->recalculate_flag is false), dm-integrity would return invalid table line - the reported number of arguments would not match the real number. This patch fixes the argument mismatch. Signed-off-by: Mikulas Patocka <mpatocka@xxxxxxxxxx> Reported-by: Ondrej Kozina <okozina@xxxxxxxxxx> Cc: stable@xxxxxxxxxxxxxxx # v5.2+ Fixes: 468dfca38b1a ("dm integrity: add a bitmap mode") --- drivers/md/dm-integrity.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) Index: linux-2.6/drivers/md/dm-integrity.c =================================================================== --- linux-2.6.orig/drivers/md/dm-integrity.c 2020-02-14 17:19:16.000000000 +0100 +++ linux-2.6/drivers/md/dm-integrity.c 2020-02-17 13:58:05.000000000 +0100 @@ -2982,7 +2982,7 @@ static void dm_integrity_status(struct d DMEMIT(" meta_device:%s", ic->meta_dev->name); if (ic->sectors_per_block != 1) DMEMIT(" block_size:%u", ic->sectors_per_block << SECTOR_SHIFT); - if (ic->recalculate_flag) + if (ic->sb->flags & cpu_to_le32(SB_FLAG_RECALCULATING)) DMEMIT(" recalculate"); DMEMIT(" journal_sectors:%u", ic->initial_sectors - SB_SECTORS); DMEMIT(" interleave_sectors:%u", 1U << ic->sb->log2_interleave_sectors); -- dm-devel mailing list dm-devel@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/dm-devel