fideduperange.2: Fix the discussion of maximum sizes

Fix the discussion of the limitations on the dest_count and
src_length parameters to the fideduperange ioctl() to reflect
what's actually in the kernel.

Reviewed-by: Omar Sandoval <osandov@fb.com>
Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
This commit is contained in:
Darrick J. Wong 2016-11-22 20:48:16 -08:00 committed by Michael Kerrisk
parent 5b711f5e45
commit c835f0e088
1 changed files with 17 additions and 3 deletions

View File

@ -95,7 +95,7 @@ struct file_dedupe_range_info {
.in .in
Each deduplication operation targets Each deduplication operation targets
.IR length .IR src_length
bytes in file descriptor bytes in file descriptor
.IR dest_fd .IR dest_fd
at offset at offset
@ -108,8 +108,15 @@ During the call,
must be open for reading and must be open for reading and
.IR dest_fd .IR dest_fd
must be open for writing. must be open for writing.
For any call to this ioctl, there may not be more than 65,536 The combined size of the struct
requests attached; each request may not exceed 16MiB. .IR file_dedupe_range
and the struct
.IR file_dedupe_range_info
array must not exceed the system page size.
The maximum size of
.IR src_length
is filesystem dependent and is typically 16MiB.
This limit will be enforced silently by the filesystem.
By convention, the storage used by By convention, the storage used by
.IR src_fd .IR src_fd
is mapped into is mapped into
@ -144,6 +151,13 @@ is set to indicate the error.
.SH ERRORS .SH ERRORS
Error codes can be one of, but are not limited to, the following: Error codes can be one of, but are not limited to, the following:
.TP .TP
.B ENOMEM
The kernel was unable to allocate sufficient memory to perform the
operation or
.IR dest_count
is so large that the input argument description spans more than a single
page of memory.
.TP
.B EBADF .B EBADF
.IR src_fd .IR src_fd
is not open for reading; is not open for reading;