summaryrefslogtreecommitdiffstats
path: root/fs/nfs/nfs42xdr.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* nfs: fix decoder callback prototypesChristoph Hellwig2017-05-151-6/+12
| | | | | | | | | Declare the p_decode callbacks with the proper prototype instead of casting to kxdrdproc_t and losing all type safety. Signed-off-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Jeff Layton <jlayton@redhat.com> Acked-by: Trond Myklebust <trond.myklebust@primarydata.com>
* nfs: fix encoder callback prototypesChristoph Hellwig2017-05-151-14/+20
| | | | | | | | | Declare the p_encode callbacks with the proper prototype instead of casting to kxdreproc_t and losing all type safety. Signed-off-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Jeff Layton <jlayton@redhat.com> Acked-by: Trond Myklebust <trond.myklebust@primarydata.com>
* NFS append COMMIT after synchronous COPYOlga Kornievskaia2017-05-091-2/+20
| | | | | | | | | | | | Instead of messing with the commit path which has been causing issues, add a COMMIT op after the COPY and ask for stable copies in the first space. It saves a round trip, since after the COPY, the client sends a COMMIT anyway. Signed-off-by: Olga Kornievskaia <kolga@netapp.com> Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
* pNFS/flexfiles: Minor refactoring before adding iostats to layoutreturnTrond Myklebust2016-12-031-2/+3
| | | | Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
* NFSv4.2: Fix warning "variable ‘stateids’ set but not used"Trond Myklebust2016-07-241-2/+10
| | | | | | | Replace it with a test for whether or not the sent a stateid in violation of what we asked for. Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
* NFS: Add COPY nfs operationAnna Schumaker2016-05-171-0/+146
| | | | | | | | This adds the copy_range file_ops function pointer used by the sys_copy_range() function call. This patch only implements sync copies, so if an async copy happens we decode the stateid and ignore it. Signed-off-by: Anna Schumaker <bjschuma@netapp.com>
* nfs42: add CLONE xdr functionsPeng Tao2015-10-151-1/+96
| | | | | | | xdr definitions per draft-ietf-nfsv4-minorversion2-38.txt Signed-off-by: Peng Tao <tao.peng@primarydata.com> Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
* nfs42: decode_layoutstats does not need res parameterPeng Tao2015-08-261-3/+2
| | | | | | Reviewed-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Peng Tao <tao.peng@primarydata.com> Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
* NFSv4.2: Fix up a decoding error in layoutstatsTrond Myklebust2015-06-271-17/+1
| | | | | | | According to the spec, the server is only returning the status, which we decode in the op header. Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
* NFSv.2/pnfs Add a LAYOUTSTATS rpc functionTrond Myklebust2015-06-241-0/+122
| | | | | | | Reviewed-by: Jeff Layton <jeff.layton@primarydata.com> Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com> Signed-off-by: Peng Tao <tao.peng@primarydata.com> Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
* NFS: Don't zap caches on fallocate()Anna Schumaker2015-04-231-4/+16
| | | | | | | | | | | This patch adds a GETATTR to the end of ALLOCATE and DEALLOCATE operations so we can set the updated inode size and change attribute directly. DEALLOCATE will still need to release pagecache pages, so nfs42_proc_deallocate() now calls truncate_pagecache_range() before contacting the server. Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com> Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
* nfs: Add DEALLOCATE supportAnna Schumaker2014-11-251-0/+64
| | | | | | | | This patch adds support for using the NFS v4.2 operation DEALLOCATE to punch holes in a file. Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com> Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
* nfs: Add ALLOCATE supportAnna Schumaker2014-11-251-0/+75
| | | | | | | | This patch adds support for using the NFS v4.2 operation ALLOCATE to preallocate data in a file. Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com> Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
* NFS: Implement SEEKAnna Schumaker2014-09-301-0/+98
The SEEK operation is used when an application makes an lseek call with either the SEEK_HOLE or SEEK_DATA flags set. I fall back on nfs_file_llseek() if the server does not have SEEK support. Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com> Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>