Upstream doesn't have this issue. Seems we do some auto optimization to the "read ahead" value: # blockdev --setra 678 /dev/loop0 # blockdev --getra /dev/loop0 672 # lvcreate -n testlv -L4m testvg /dev/loop0 # blockdev --getra /dev/testvg/testlv 1024 # blockdev --setra 4096 /dev/loop0 # blockdev --getra /dev/loop0 4096 # lvcreate -n testlv -L4m testvg /dev/loop0 Logical volume "testlv" created. # blockdev --getra /dev/testvg/testlv 4096