diff options
author | Matthew Wilcox <matthew@wil.cx> | 2007-12-06 16:24:39 -0500 |
---|---|---|
committer | Matthew Wilcox <willy@linux.intel.com> | 2007-12-06 17:40:25 -0500 |
commit | 150030b78a454ba50d5e267b0dcf01b162809192 (patch) | |
tree | 4de766e7abbfd73a052f14f8efd3a26eb7b59d87 /fs/nfs/nfs3proc.c | |
parent | 009e577e079656d51d0fe9b15e61e41b00816c29 (diff) |
NFS: Switch from intr mount option to TASK_KILLABLE
By using the TASK_KILLABLE infrastructure, we can get rid of the 'intr'
mount option. We have to use _killable everywhere instead of _interruptible
as we get rid of rpc_clnt_sigmask/sigunmask.
Signed-off-by: Liam R. Howlett <howlett@gmail.com>
Signed-off-by: Matthew Wilcox <willy@linux.intel.com>
Diffstat (limited to 'fs/nfs/nfs3proc.c')
-rw-r--r-- | fs/nfs/nfs3proc.c | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/fs/nfs/nfs3proc.c b/fs/nfs/nfs3proc.c index 4cdc2361a669..5ae96340f2c2 100644 --- a/fs/nfs/nfs3proc.c +++ b/fs/nfs/nfs3proc.c | |||
@@ -27,17 +27,14 @@ | |||
27 | static int | 27 | static int |
28 | nfs3_rpc_wrapper(struct rpc_clnt *clnt, struct rpc_message *msg, int flags) | 28 | nfs3_rpc_wrapper(struct rpc_clnt *clnt, struct rpc_message *msg, int flags) |
29 | { | 29 | { |
30 | sigset_t oldset; | ||
31 | int res; | 30 | int res; |
32 | rpc_clnt_sigmask(clnt, &oldset); | ||
33 | do { | 31 | do { |
34 | res = rpc_call_sync(clnt, msg, flags); | 32 | res = rpc_call_sync(clnt, msg, flags); |
35 | if (res != -EJUKEBOX) | 33 | if (res != -EJUKEBOX) |
36 | break; | 34 | break; |
37 | schedule_timeout_interruptible(NFS_JUKEBOX_RETRY_TIME); | 35 | schedule_timeout_killable(NFS_JUKEBOX_RETRY_TIME); |
38 | res = -ERESTARTSYS; | 36 | res = -ERESTARTSYS; |
39 | } while (!signalled()); | 37 | } while (!fatal_signal_pending(current)); |
40 | rpc_clnt_sigunmask(clnt, &oldset); | ||
41 | return res; | 38 | return res; |
42 | } | 39 | } |
43 | 40 | ||