aboutsummaryrefslogtreecommitdiffstats
path: root/fs/nfs/nfs4proc.c
diff options
context:
space:
mode:
authorChuck Lever <cel@netapp.com>2006-03-20 13:44:14 -0500
committerTrond Myklebust <Trond.Myklebust@netapp.com>2006-03-20 13:44:14 -0500
commit006ea73e5fa82915d0ac7a3f15ee7c688433236d (patch)
tree0f522982fe3d01a74f1ad9f5f713cbd10a6b09bd /fs/nfs/nfs4proc.c
parent91d5b47023b608227d605d1e916b29dd0215bff7 (diff)
NFS: add hooks to account for NFSERR_JUKEBOX errors
Make an inode or an nfs_server struct available in the logic that handles JUKEBOX/DELAY type errors so the NFS client can account for them. This patch is split out from the main nfs iostat patch to highlight minor architectural changes required to support this statistic. Test plan: None. Signed-off-by: Chuck Lever <cel@netapp.com> Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'fs/nfs/nfs4proc.c')
-rw-r--r--fs/nfs/nfs4proc.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/fs/nfs/nfs4proc.c b/fs/nfs/nfs4proc.c
index 77a565eba562..f1ff4fa6cce5 100644
--- a/fs/nfs/nfs4proc.c
+++ b/fs/nfs/nfs4proc.c
@@ -51,6 +51,7 @@
51 51
52#include "nfs4_fs.h" 52#include "nfs4_fs.h"
53#include "delegation.h" 53#include "delegation.h"
54#include "iostat.h"
54 55
55#define NFSDBG_FACILITY NFSDBG_PROC 56#define NFSDBG_FACILITY NFSDBG_PROC
56 57
@@ -2755,8 +2756,10 @@ nfs4_async_handle_error(struct rpc_task *task, const struct nfs_server *server)
2755 rpc_wake_up_task(task); 2756 rpc_wake_up_task(task);
2756 task->tk_status = 0; 2757 task->tk_status = 0;
2757 return -EAGAIN; 2758 return -EAGAIN;
2758 case -NFS4ERR_GRACE:
2759 case -NFS4ERR_DELAY: 2759 case -NFS4ERR_DELAY:
2760 nfs_inc_server_stats((struct nfs_server *) server,
2761 NFSIOS_DELAY);
2762 case -NFS4ERR_GRACE:
2760 rpc_delay(task, NFS4_POLL_RETRY_MAX); 2763 rpc_delay(task, NFS4_POLL_RETRY_MAX);
2761 task->tk_status = 0; 2764 task->tk_status = 0;
2762 return -EAGAIN; 2765 return -EAGAIN;