mon.c (67c6d107a689243979a2b5f15244b5261634a924) mon.c (5cf1c4b19db99d21d44c2ab457cfd44eb86b4439)
1/*
2 * linux/fs/lockd/mon.c
3 *
4 * The kernel statd client.
5 *
6 * Copyright (C) 1996, Olaf Kirch <okir@monad.swb.de>
7 */
8

--- 235 unchanged lines hidden (view full) ---

244 if (strlen(pos->sm_name) != hostname_len
245 || memcmp(pos->sm_name, hostname, hostname_len))
246 continue;
247 } else if (!nlm_cmp_addr(nsm_addr(pos), sap))
248 continue;
249 atomic_inc(&pos->sm_count);
250 kfree(nsm);
251 nsm = pos;
1/*
2 * linux/fs/lockd/mon.c
3 *
4 * The kernel statd client.
5 *
6 * Copyright (C) 1996, Olaf Kirch <okir@monad.swb.de>
7 */
8

--- 235 unchanged lines hidden (view full) ---

244 if (strlen(pos->sm_name) != hostname_len
245 || memcmp(pos->sm_name, hostname, hostname_len))
246 continue;
247 } else if (!nlm_cmp_addr(nsm_addr(pos), sap))
248 continue;
249 atomic_inc(&pos->sm_count);
250 kfree(nsm);
251 nsm = pos;
252 dprintk("lockd: found nsm_handle for %s (%s), cnt %d\n",
253 pos->sm_name, pos->sm_addrbuf,
254 atomic_read(&pos->sm_count));
252 goto found;
253 }
254 if (nsm) {
255 list_add(&nsm->sm_link, &nsm_handles);
255 goto found;
256 }
257 if (nsm) {
258 list_add(&nsm->sm_link, &nsm_handles);
259 dprintk("lockd: created nsm_handle for %s (%s)\n",
260 nsm->sm_name, nsm->sm_addrbuf);
256 goto found;
257 }
258 spin_unlock(&nsm_lock);
259
260 if (!create)
261 return NULL;
262
263 nsm = kzalloc(sizeof(*nsm) + hostname_len + 1, GFP_KERNEL);

--- 22 unchanged lines hidden (view full) ---

286 */
287void nsm_release(struct nsm_handle *nsm)
288{
289 if (!nsm)
290 return;
291 if (atomic_dec_and_lock(&nsm->sm_count, &nsm_lock)) {
292 list_del(&nsm->sm_link);
293 spin_unlock(&nsm_lock);
261 goto found;
262 }
263 spin_unlock(&nsm_lock);
264
265 if (!create)
266 return NULL;
267
268 nsm = kzalloc(sizeof(*nsm) + hostname_len + 1, GFP_KERNEL);

--- 22 unchanged lines hidden (view full) ---

291 */
292void nsm_release(struct nsm_handle *nsm)
293{
294 if (!nsm)
295 return;
296 if (atomic_dec_and_lock(&nsm->sm_count, &nsm_lock)) {
297 list_del(&nsm->sm_link);
298 spin_unlock(&nsm_lock);
299 dprintk("lockd: destroyed nsm_handle for %s (%s)\n",
300 nsm->sm_name, nsm->sm_addrbuf);
294 kfree(nsm);
295 }
296}
297
298/*
299 * Create NSM client for the local host
300 */
301static struct rpc_clnt *

--- 211 unchanged lines hidden ---
301 kfree(nsm);
302 }
303}
304
305/*
306 * Create NSM client for the local host
307 */
308static struct rpc_clnt *

--- 211 unchanged lines hidden ---