We create a 32M file using on a ufs filesystem:
dd if=/dev/random of=/tmp/test.file bs=32M count=1
Once a md device is created using the following command:
mdconfig -at vnode -f /tmp/test.file -s 64M
then, we try to execute the next command:
dd if=/dev/md0 of=cpy_test.file bs=16M
We get a file that is 64M long. We expected some error after 32M, but the operation succeed.
The exceeding 32M of cpy_test.file is the last 16M of the original file repeated twice.
More interesting, when we use newfs on the md0 device:
we get that the file "/tmp/test.file" under md0 becomes automatically 64M large.
Created attachment 219399 [details]
Script to reproduce the issue
Here's a script to reproduce it on FreeBSD 13.0-CURRENT r367038 amd64.