summaryrefslogtreecommitdiff
path: root/tools/perf/scripts/python/stackcollapse.py
diff options
context:
space:
mode:
authorNamjae Jeon <linkinjeon@kernel.org>2026-07-12 00:16:24 +0900
committerNamjae Jeon <linkinjeon@kernel.org>2026-08-17 15:00:44 +0900
commit96db370817d5f21a1dc10efb2210db05163f312e (patch)
tree50b11f3e2964c623903e2b5ac02acab359e4116c /tools/perf/scripts/python/stackcollapse.py
parenta72692c5bcabb67d2320e1630192f78874a7c524 (diff)
ksmbd: fall back to copy for duplicate extents
FSCTL_DUPLICATE_EXTENTS_TO_FILE currently returns STATUS_NOT_SUPPORTED when vfs_clone_file_range() cannot clone the requested range. That can happen on filesystems without reflink support even though the server can still satisfy the request by copying the bytes. Validate the requested source range before attempting the operation. If the destination range extends past EOF, leave the destination size unchanged and complete the request without copying, matching observed client expectations for this ioctl. Reject sparse source to non-sparse destination requests as unsupported. Keep sparse destination and sparse-to-sparse cases on the normal clone or copy path. Reject overlapping same-file ranges as unsupported before attempting the clone or copy operation. Return the expected handle status for invalid handles. A closed target handle fails with STATUS_FILE_CLOSED, while a bad source handle embedded in the request buffer fails with STATUS_INVALID_HANDLE. Fall back to vfs_copy_file_range() whenever the clone operation does not copy the full requested length, and keep reporting an error only if the fallback also fails or copies a partial range. Signed-off-by: Namjae Jeon <linkinjeon@kernel.org>
Diffstat (limited to 'tools/perf/scripts/python/stackcollapse.py')
0 files changed, 0 insertions, 0 deletions