Hi Coly, thank you for the patch, it worked: NAME SIZE MIN-IO OPT-IO SCHED RQ-SIZE nvme15n1 3.9T 4096 4096 none 63 └─bcache3 3.9T 512 4096 128 $ cat /sys/block/nvme15n1/queue/optimal_io_size 4096 $ cat /sys/block/nvme15n1/bcache/stripe_size 4.0M But I kind of agree with what Eric said: On Tue, Sep 26, 2023 at 10:53 PM Eric Wheeler <bcache@xxxxxxxxxxxxxxxxxx> wrote: [snipped] > > This will create expensive unaligned writes on RAID5/6 arrays for most > cases. For example, if the stripe size of 6 disks with 64 k chunks has > a size of 384 k, then when you round up to an even value of 4MB > you will introduce a read-copy-write behavior since 384KB > does not divide evenly into 4MB (4MB/384KB =~ 10.667). > > The best way to handle this would be to Use 4 megabytes as a minimum, > but round up to a multiple of the value in limits.io_opt. > > Here is a real-world example of a non-power-of-2 io_opt value: > > ]# cat /sys/block/sdc/queue/optimal_io_size > 196608 > > More below: [snipped] Waiting for your feedback, Andrea