Lines Matching defs:nw
1331 struct nlm_waiting_lock *nw;
1333 nw = malloc(sizeof(struct nlm_waiting_lock), M_NLM, M_WAITOK);
1334 nw->nw_lock = *lock;
1335 memcpy(&nw->nw_fh.fh_bytes, nw->nw_lock.fh.n_bytes,
1336 nw->nw_lock.fh.n_len);
1337 nw->nw_lock.fh.n_bytes = nw->nw_fh.fh_bytes;
1338 nw->nw_waiting = TRUE;
1339 nw->nw_vp = vp;
1341 TAILQ_INSERT_TAIL(&nlm_waiting_locks, nw, nw_link);
1344 return nw;
1350 struct nlm_waiting_lock *nw = handle;
1353 TAILQ_REMOVE(&nlm_waiting_locks, nw, nw_link);
1356 free(nw, M_NLM);
1362 struct nlm_waiting_lock *nw = handle;
1367 * nw->nw_waiting will be FALSE - in that case, don't sleep.
1371 if (nw->nw_waiting) {
1373 error = msleep(nw, &nlm_global_lock, PCATCH, "nlmlock", timo);
1376 TAILQ_REMOVE(&nlm_waiting_locks, nw, nw_link);
1383 if (!nw->nw_waiting)
1391 if (nw->nw_waiting)
1396 free(nw, M_NLM);
1404 struct nlm_waiting_lock *nw;
1407 TAILQ_FOREACH(nw, &nlm_waiting_locks, nw_link) {
1408 if (nw->nw_vp == vp) {
1409 wakeup(nw);
1542 struct nlm_waiting_lock *nw;
1685 TAILQ_FOREACH(nw, &nlm_waiting_locks, nw_link) {
1686 wakeup(nw);
2294 struct nlm_waiting_lock *nw;
2309 TAILQ_FOREACH(nw, &nlm_waiting_locks, nw_link) {
2310 if (!nw->nw_waiting)
2312 if (argp->alock.svid == nw->nw_lock.svid
2313 && argp->alock.l_offset == nw->nw_lock.l_offset
2314 && argp->alock.l_len == nw->nw_lock.l_len
2315 && argp->alock.fh.n_len == nw->nw_lock.fh.n_len
2316 && !memcmp(argp->alock.fh.n_bytes, nw->nw_lock.fh.n_bytes,
2317 nw->nw_lock.fh.n_len)) {
2318 nw->nw_waiting = FALSE;
2319 wakeup(nw);