Home | History | Annotate | Download | only in server

Lines Matching defs:lop

105 static void nfsrv_freenfslock(struct nfslock *lop);
867 struct nfslock *lop;
897 LIST_FOREACH(lop, &lckownstp->ls_lock, lo_lckowner) {
923 struct nfslock *lop;
986 lop = LIST_FIRST(&lfp->lf_lock);
987 while (lop != NULL && cnt < maxcnt) {
988 stp = lop->lo_stp;
989 ldumpp[cnt].ndlck_flags = lop->lo_flags;
990 ldumpp[cnt].ndlck_first = lop->lo_first;
991 ldumpp[cnt].ndlck_end = lop->lo_end;
1011 lop = LIST_NEXT(lop, lo_lckfile);
1375 struct nfslock *lop, *nlop;
1384 lop = LIST_FIRST(&stp->ls_lock);
1385 while (lop != NULL) {
1386 nlop = LIST_NEXT(lop, lo_lckowner);
1392 lfp = lop->lo_lfp;
1393 else if (lfp != lop->lo_lfp)
1414 first = lop->lo_first;
1415 end = lop->lo_end;
1416 nfsrv_freenfslock(lop);
1423 nfsrv_freenfslock(lop);
1424 lop = nlop;
1434 nfsrv_freenfslock(struct nfslock *lop)
1437 if (lop->lo_lckfile.le_prev != NULL) {
1438 LIST_REMOVE(lop, lo_lckfile);
1442 LIST_REMOVE(lop, lo_lckowner);
1443 FREE((caddr_t)lop, M_NFSDLOCK);
1527 struct nfslock *lop;
2073 LIST_FOREACH(lop, &lfp->lf_lock, lo_lckfile) {
2074 if (new_lop->lo_end > lop->lo_first &&
2075 new_lop->lo_first < lop->lo_end &&
2077 lop->lo_flags == NFSLCK_WRITE) &&
2078 lckstp != lop->lo_stp &&
2079 (clp != lop->lo_stp->ls_clp ||
2080 lckstp->ls_ownerlen != lop->lo_stp->ls_ownerlen ||
2081 NFSBCMP(lckstp->ls_owner, lop->lo_stp->ls_owner,
2088 ret = nfsrv_clientconflict(lop->lo_stp->ls_clp, &haslock,
2091 ret = nfsrv_clientconflict(lop->lo_stp->ls_clp, &haslock,
2123 cfp->cl_clientid.lval[0]=lop->lo_stp->ls_stateid.other[0];
2124 cfp->cl_clientid.lval[1]=lop->lo_stp->ls_stateid.other[1];
2125 cfp->cl_first = lop->lo_first;
2126 cfp->cl_end = lop->lo_end;
2127 cfp->cl_flags = lop->lo_flags;
2128 cfp->cl_ownerlen = lop->lo_stp->ls_ownerlen;
2129 NFSBCOPY(lop->lo_stp->ls_owner, cfp->cl_owner,
3619 struct nfslock *lop, *nlop;
3626 lop = LIST_FIRST(&lfp->lf_lock);
3627 if (lop == NULL ||
3628 new_lop->lo_first <= lop->lo_first) {
3631 nlop = LIST_NEXT(lop, lo_lckfile);
3634 lop = nlop;
3635 nlop = LIST_NEXT(lop, lo_lckfile);
3637 LIST_INSERT_AFTER(lop, new_lop, lo_lckfile);
3671 struct nfslock *lop, *tlop, *ilop;
3683 lop = LIST_FIRST(&stp->ls_lock);
3686 lop = LIST_FIRST(&lfp->lf_locallock);
3688 while (lop != NULL) {
3693 if (lop->lo_lfp == lfp) {
3695 if (lop->lo_end >= new_lop->lo_first) {
3696 if (new_lop->lo_end < lop->lo_first) {
3704 if (new_lop->lo_flags == lop->lo_flags ||
3705 (new_lop->lo_first <= lop->lo_first &&
3706 new_lop->lo_end >= lop->lo_end)) {
3714 if (lop->lo_first < new_lop->lo_first)
3715 new_lop->lo_first = lop->lo_first;
3716 if (lop->lo_end > new_lop->lo_end)
3717 new_lop->lo_end = lop->lo_end;
3718 tlop = lop;
3719 lop = LIST_NEXT(lop, lo_lckowner);
3728 if (new_lop->lo_first <= lop->lo_first) {
3736 lop->lo_first = new_lop->lo_end;
3739 if (new_lop->lo_end >= lop->lo_end) {
3748 lop->lo_end = new_lop->lo_first;
3749 ilop = lop;
3750 lop = LIST_NEXT(lop, lo_lckowner);
3771 other_lop->lo_end = lop->lo_end;
3772 other_lop->lo_flags = lop->lo_flags;
3775 lop->lo_end = tmp;
3776 nfsrv_insertlock(other_lop, lop, stp, lfp);
3778 ilop = lop;
3782 ilop = lop;
3783 lop = LIST_NEXT(lop, lo_lckowner);
3784 if (myfile && (lop == NULL || lop->lo_lfp != lfp))
5212 struct nfslock lo, *lop = &lo;
5218 lop->lo_first = nvap->na_size;
5221 lop->lo_first = 0;
5230 lop->lo_end = NFS64BITSSET;
5231 lop->lo_flags = NFSLCK_WRITE;
5239 error = nfsrv_lockctrl(vp, &stp, &lop, NULL, clientid,
5479 struct nfslock *lop, *nlop;
5483 lop = LIST_FIRST(&lfp->lf_locallock);
5484 while (first < end && lop != NULL) {
5485 nlop = LIST_NEXT(lop, lo_lckowner);
5486 if (first >= lop->lo_end) {
5488 lop = nlop;
5489 } else if (first < lop->lo_first) {
5491 if (end <= lop->lo_first) {
5501 NFSLCK_UNLOCK, first, lop->lo_first, cfp,
5505 first = lop->lo_first;
5509 if (end <= lop->lo_end) {
5512 lop->lo_flags, first, end, cfp, p);
5519 lop->lo_flags, first, lop->lo_end, cfp, p);
5522 first = lop->lo_end;
5523 lop = nlop;
5549 struct nfslock *lop;
5557 LIST_FOREACH(lop, &lfp->lf_lock, lo_lckfile) {
5558 KASSERT(prevfirst <= lop->lo_first,
5560 KASSERT(lop->lo_first < lop->lo_end,
5562 prevfirst = lop->lo_first;
5563 if (first >= lop->lo_first &&
5564 first < lop->lo_end)
5570 first = lop->lo_end;
5571 else if (end > lop->lo_first &&
5572 lop->lo_first > first) {
5578 end = lop->lo_first;