Closed anoopcs9 closed 3 months ago
Here's how the test progresses:
stx_blocks * 512
(8*512).stx_blocks
is populated by the quotient of file size divided in units of 512(9*512) which breaks the expectation from test.@anoopcs9 I am using the following shell commands to reproduce:
truncate -s 4096 test1
dd if=/dev/urandom of=test1 bs=1 count=1 conv=notrunc status=none
dd if=/dev/urandom of=test1 bs=1 count=4096 seek=1 conv=notrunc status=none
stat test1 --format="%n %s %b %B"
and indeed, on cephfs (direct mount and via samba) I get:
test1 4097 9 512
while on xfs I get:
test1 4097 16 512
However, note that linux man 2 stat
says that:
Use of the st_blocks and st_blksize fields may be less portable.
I suspect this is one of those cases.
_vfsceph backed shares errors out(NT_STATUS_OBJECT_NAME_NOT_FOUND
) way earlier in these durable handle tests during reconnect as it fails to precisely match btime.
Following error is seen with CephFS backed shares on running smb2.durable-open.alloc-size.