Question about NFSv4.2 server-side copy implementation

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello,
 
The NFSv4.2 spec (RFC 7862) on section 15.2.3 (COPY description) says the following:
 
If the source offset or the source offset plus count is greater than
the size of the source file, the operation MUST fail with
NFS4ERR_INVAL.
 
I can understand failing with NFS4ERR_INVAL when the source offset is beyond the end of the file,
but do you think failing with NFS4ERR_INVAL is too strict when the source offset plus the count is beyond the end of the file?
What is the rationalization for failing on this specific instance?
Why not return a short copy instead?
Can the COPY return a count less than what it requested (a short copy)?
 
As of right now, the implementation on the Linux server adheres to the spec but copy_file_range succeeds
when it is called against the local file system, NFSv4.x or NFSv3.
For the local file system, NFSv4.x or NFSv3 copy_file_range falls back to regular copy by
reading from the source file and then writing to the destination file but I do believe the
syscall should be consistent regardless of the underlying file system.
 
 
--Jorge
--
To unsubscribe from this list: send the line "unsubscribe linux-nfs" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Filesystem Development]     [Linux USB Development]     [Linux Media Development]     [Video for Linux]     [Linux NILFS]     [Linux Audio Users]     [Yosemite Info]     [Linux SCSI]

  Powered by Linux