aboutsummaryrefslogtreecommitdiffstats
path: root/fs/nfs/callback.c
diff options
context:
space:
mode:
Diffstat (limited to 'fs/nfs/callback.c')
-rw-r--r--fs/nfs/callback.c4
1 files changed, 0 insertions, 4 deletions
diff --git a/fs/nfs/callback.c b/fs/nfs/callback.c
index c1e7c8300629..9e713d2d5d74 100644
--- a/fs/nfs/callback.c
+++ b/fs/nfs/callback.c
@@ -105,7 +105,6 @@ int nfs_callback_up(void)
105 struct svc_rqst *rqstp; 105 struct svc_rqst *rqstp;
106 int ret = 0; 106 int ret = 0;
107 107
108 lock_kernel();
109 mutex_lock(&nfs_callback_mutex); 108 mutex_lock(&nfs_callback_mutex);
110 if (nfs_callback_info.users++ || nfs_callback_info.task != NULL) 109 if (nfs_callback_info.users++ || nfs_callback_info.task != NULL)
111 goto out; 110 goto out;
@@ -149,7 +148,6 @@ out:
149 if (serv) 148 if (serv)
150 svc_destroy(serv); 149 svc_destroy(serv);
151 mutex_unlock(&nfs_callback_mutex); 150 mutex_unlock(&nfs_callback_mutex);
152 unlock_kernel();
153 return ret; 151 return ret;
154out_err: 152out_err:
155 dprintk("Couldn't create callback socket or server thread; err = %d\n", 153 dprintk("Couldn't create callback socket or server thread; err = %d\n",
@@ -163,13 +161,11 @@ out_err:
163 */ 161 */
164void nfs_callback_down(void) 162void nfs_callback_down(void)
165{ 163{
166 lock_kernel();
167 mutex_lock(&nfs_callback_mutex); 164 mutex_lock(&nfs_callback_mutex);
168 nfs_callback_info.users--; 165 nfs_callback_info.users--;
169 if (nfs_callback_info.users == 0 && nfs_callback_info.task != NULL) 166 if (nfs_callback_info.users == 0 && nfs_callback_info.task != NULL)
170 kthread_stop(nfs_callback_info.task); 167 kthread_stop(nfs_callback_info.task);
171 mutex_unlock(&nfs_callback_mutex); 168 mutex_unlock(&nfs_callback_mutex);
172 unlock_kernel();
173} 169}
174 170
175static int nfs_callback_authenticate(struct svc_rqst *rqstp) 171static int nfs_callback_authenticate(struct svc_rqst *rqstp)