These commands
# modprobe brd rd_size=1048576
# vgcreate vg /dev/ram*
# lvcreate -m4 -L10 -n lv vg
trigger the following warnings:
device-mapper: table: 252:10: adding target device (start sect 0 len 24576) 
caused an alignment inconsistency
device-mapper: table: 252:10: adding target device (start sect 0 len 24576) 
caused an alignment inconsistency

The warnings are caused by the fact that io_min is 512 and physical block
size is 4096.

If there's chunk-less raid, such as raid1, io_min shouldn't be set to zero 
because it would be raised to 512 and it would trigger the warning.

Signed-off-by: Mikulas Patocka <[email protected]>
Cc: [email protected]

---
 drivers/md/dm-raid.c |    6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

Index: linux-2.6/drivers/md/dm-raid.c
===================================================================
--- linux-2.6.orig/drivers/md/dm-raid.c 2025-09-15 15:56:34.000000000 +0200
+++ linux-2.6/drivers/md/dm-raid.c      2025-09-15 15:56:56.000000000 +0200
@@ -3813,8 +3813,10 @@ static void raid_io_hints(struct dm_targ
        struct raid_set *rs = ti->private;
        unsigned int chunk_size_bytes = to_bytes(rs->md.chunk_sectors);
 
-       limits->io_min = chunk_size_bytes;
-       limits->io_opt = chunk_size_bytes * mddev_data_stripes(rs);
+       if (chunk_size_bytes) {
+               limits->io_min = chunk_size_bytes;
+               limits->io_opt = chunk_size_bytes * mddev_data_stripes(rs);
+       }
 }
 
 static void raid_presuspend(struct dm_target *ti)


Reply via email to