Linux CIFS filesystem development
 help / color / mirror / Atom feed
* generic/304 doesn't seem terminable for cifs
@ 2023-12-02 22:14 David Howells
  2023-12-04  0:00 ` Dave Chinner
  0 siblings, 1 reply; 2+ messages in thread
From: David Howells @ 2023-12-02 22:14 UTC (permalink / raw)
  To: fstests, darrick.wong; +Cc: dhowells, Steve French, linux-cifs


I've been running "-g quick" on a CIFS mount and it got to generic/304... and
is still there nearly 30 hours later.  The kernel isn't stuck - userspace is
cranking out BTRFS_IOC_FILE_EXTENT_SAME or FIDEDUPERANGE at a great rate.

The ps tree looks like:

S+     0:03       \_ /bin/bash ./check -E .exclude -g quick
S+     0:00           \_ /bin/bash /root/xfstests-dev/tests/generic/304
S+     0:00               \_ /bin/bash /root/xfstests-dev/tests/generic/304
Dl+  316:55               |   \_ /usr/sbin/xfs_io -i -f -c dedupe /xfstest.test/test-304/file0 0 0 9223372036854775807 /xfstest.test/test-
S+     0:00               \_ /bin/bash /root/xfstests-dev/tests/generic/304
S+     0:00                   \_ sed -e s/^dedupe:/XFS_IOC_FILE_EXTENT_SAME:/g

The xfs_io command strace is an endlessly repeated:

ioctl(4, BTRFS_IOC_FILE_EXTENT_SAME or FIDEDUPERANGE, {src_offset=389438053887770624, src_length=8833933982967005183, dest_count=1, info=[{dest_fd=3, dest_offset=389438053887770624}]} => {info=[{bytes_deduped=1073741824, status=0}]}) = 0
ioctl(4, BTRFS_IOC_FILE_EXTENT_SAME or FIDEDUPERANGE, {src_offset=389438054961512448, src_length=8833933981893263359, dest_count=1, info=[{dest_fd=3, dest_offset=389438054961512448}]} => {info=[{bytes_deduped=1073741824, status=0}]}) = 0
ioctl(4, BTRFS_IOC_FILE_EXTENT_SAME or FIDEDUPERANGE, {src_offset=389438056035254272, src_length=8833933980819521535, dest_count=1, info=[{dest_fd=3, dest_offset=389438056035254272}]} => {info=[{bytes_deduped=1073741824, status=0}]}) = 0
ioctl(4, BTRFS_IOC_FILE_EXTENT_SAME or FIDEDUPERANGE, {src_offset=389438057108996096, src_length=8833933979745779711, dest_count=1, info=[{dest_fd=3, dest_offset=389438057108996096}]}^Cstrace: Process 105030 detache

with the dest_offset increasing a bit each time.  The log so far is:

wrote 1/1 bytes at offset 9223372036854775806
1.000000 bytes, 1 ops; 0.0000 sec (97.656 KiB/sec and 100000.0000 ops/sec)
wrote 1/1 bytes at offset 9223372036854775806
1.000000 bytes, 1 ops; 0.0000 sec (97.656 KiB/sec and 100000.0000 ops/sec)
wrote 1/1 bytes at offset 1048575
1.000000 bytes, 1 ops; 0.0000 sec (139.509 KiB/sec and 142857.1429 ops/sec)

Looking in the protocol dump, it's endlessly repeating:

  190 0.007930488  192.168.6.2 → 192.168.6.1  SMB2 174 SetInfo Request FILE_INFO/SMB2_FILE_ENDOFFILE_INFO
  191 0.007962785  192.168.6.1 → 192.168.6.2  SMB2 136 SetInfo Response
  192 0.007974644  192.168.6.2 → 192.168.6.1  SMB2 230 Ioctl Request FILE_SYSTEM Function:0x00d1
  193 0.008069283  192.168.6.1 → 192.168.6.2  SMB2 182 Ioctl Response FILE_SYSTEM Function:0x00d1

It's advancing the EOF marker each time and then doing some ioctl function
that wireshark can't decode.

Is this a bug in "xfs_io dedupe"?

David


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2023-12-04  0:00 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-12-02 22:14 generic/304 doesn't seem terminable for cifs David Howells
2023-12-04  0:00 ` Dave Chinner

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox