Home | History | Annotate | Download | only in nlm

Lines Matching refs:nw

1335 	struct nlm_waiting_lock *nw;
1337 nw = malloc(sizeof(struct nlm_waiting_lock), M_NLM, M_WAITOK);
1338 nw->nw_lock = *lock;
1339 memcpy(&nw->nw_fh.fh_bytes, nw->nw_lock.fh.n_bytes,
1340 nw->nw_lock.fh.n_len);
1341 nw->nw_lock.fh.n_bytes = nw->nw_fh.fh_bytes;
1342 nw->nw_waiting = TRUE;
1343 nw->nw_vp = vp;
1345 TAILQ_INSERT_TAIL(&nlm_waiting_locks, nw, nw_link);
1348 return nw;
1354 struct nlm_waiting_lock *nw = handle;
1357 TAILQ_REMOVE(&nlm_waiting_locks, nw, nw_link);
1360 free(nw, M_NLM);
1366 struct nlm_waiting_lock *nw = handle;
1371 * nw->nw_waiting will be FALSE - in that case, don't sleep.
1375 if (nw->nw_waiting) {
1377 error = msleep(nw, &nlm_global_lock, PCATCH, "nlmlock", timo);
1380 TAILQ_REMOVE(&nlm_waiting_locks, nw, nw_link);
1387 if (!nw->nw_waiting)
1395 if (nw->nw_waiting)
1400 free(nw, M_NLM);
1408 struct nlm_waiting_lock *nw;
1411 TAILQ_FOREACH(nw, &nlm_waiting_locks, nw_link) {
1412 if (nw->nw_vp == vp) {
1413 wakeup(nw);
1547 struct nlm_waiting_lock *nw;
1690 TAILQ_FOREACH(nw, &nlm_waiting_locks, nw_link) {
1691 wakeup(nw);
2307 struct nlm_waiting_lock *nw;
2322 TAILQ_FOREACH(nw, &nlm_waiting_locks, nw_link) {
2323 if (!nw->nw_waiting)
2325 if (argp->alock.svid == nw->nw_lock.svid
2326 && argp->alock.l_offset == nw->nw_lock.l_offset
2327 && argp->alock.l_len == nw->nw_lock.l_len
2328 && argp->alock.fh.n_len == nw->nw_lock.fh.n_len
2329 && !memcmp(argp->alock.fh.n_bytes, nw->nw_lock.fh.n_bytes,
2330 nw->nw_lock.fh.n_len)) {
2331 nw->nw_waiting = FALSE;
2332 wakeup(nw);