diff options
Diffstat (limited to 'fs/nfs/pnfs.c')
-rw-r--r-- | fs/nfs/pnfs.c | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/fs/nfs/pnfs.c b/fs/nfs/pnfs.c index 8abe27165ad0..93496c059837 100644 --- a/fs/nfs/pnfs.c +++ b/fs/nfs/pnfs.c | |||
@@ -1912,12 +1912,13 @@ static void pnfs_ld_handle_write_error(struct nfs_pgio_header *hdr) | |||
1912 | */ | 1912 | */ |
1913 | void pnfs_ld_write_done(struct nfs_pgio_header *hdr) | 1913 | void pnfs_ld_write_done(struct nfs_pgio_header *hdr) |
1914 | { | 1914 | { |
1915 | trace_nfs4_pnfs_write(hdr, hdr->pnfs_error); | 1915 | if (likely(!hdr->pnfs_error)) { |
1916 | if (!hdr->pnfs_error) { | ||
1917 | pnfs_set_layoutcommit(hdr->inode, hdr->lseg, | 1916 | pnfs_set_layoutcommit(hdr->inode, hdr->lseg, |
1918 | hdr->mds_offset + hdr->res.count); | 1917 | hdr->mds_offset + hdr->res.count); |
1919 | hdr->mds_ops->rpc_call_done(&hdr->task, hdr); | 1918 | hdr->mds_ops->rpc_call_done(&hdr->task, hdr); |
1920 | } else | 1919 | } |
1920 | trace_nfs4_pnfs_write(hdr, hdr->pnfs_error); | ||
1921 | if (unlikely(hdr->pnfs_error)) | ||
1921 | pnfs_ld_handle_write_error(hdr); | 1922 | pnfs_ld_handle_write_error(hdr); |
1922 | hdr->mds_ops->rpc_release(hdr); | 1923 | hdr->mds_ops->rpc_release(hdr); |
1923 | } | 1924 | } |
@@ -2028,11 +2029,12 @@ static void pnfs_ld_handle_read_error(struct nfs_pgio_header *hdr) | |||
2028 | */ | 2029 | */ |
2029 | void pnfs_ld_read_done(struct nfs_pgio_header *hdr) | 2030 | void pnfs_ld_read_done(struct nfs_pgio_header *hdr) |
2030 | { | 2031 | { |
2031 | trace_nfs4_pnfs_read(hdr, hdr->pnfs_error); | ||
2032 | if (likely(!hdr->pnfs_error)) { | 2032 | if (likely(!hdr->pnfs_error)) { |
2033 | __nfs4_read_done_cb(hdr); | 2033 | __nfs4_read_done_cb(hdr); |
2034 | hdr->mds_ops->rpc_call_done(&hdr->task, hdr); | 2034 | hdr->mds_ops->rpc_call_done(&hdr->task, hdr); |
2035 | } else | 2035 | } |
2036 | trace_nfs4_pnfs_read(hdr, hdr->pnfs_error); | ||
2037 | if (unlikely(hdr->pnfs_error)) | ||
2036 | pnfs_ld_handle_read_error(hdr); | 2038 | pnfs_ld_handle_read_error(hdr); |
2037 | hdr->mds_ops->rpc_release(hdr); | 2039 | hdr->mds_ops->rpc_release(hdr); |
2038 | } | 2040 | } |