Lines Matching defs:lop

74 static void nfsrv_freenfslock(struct nfslock *lop);
661 struct nfslock *lop;
691 LIST_FOREACH(lop, &lckownstp->ls_lock, lo_lckowner) {
717 struct nfslock *lop;
780 lop = LIST_FIRST(&lfp->lf_lock);
781 while (lop != LIST_END(&lfp->lf_lock) && cnt < maxcnt) {
782 stp = lop->lo_stp;
783 ldumpp[cnt].ndlck_flags = lop->lo_flags;
784 ldumpp[cnt].ndlck_first = lop->lo_first;
785 ldumpp[cnt].ndlck_end = lop->lo_end;
805 lop = LIST_NEXT(lop, lo_lckfile);
1164 struct nfslock *lop, *nlop;
1171 lop = LIST_FIRST(&stp->ls_lock);
1172 while (lop != LIST_END(&stp->ls_lock)) {
1173 nlop = LIST_NEXT(lop, lo_lckowner);
1179 lfp = lop->lo_lfp;
1180 else if (lfp != lop->lo_lfp)
1200 first = lop->lo_first;
1201 end = lop->lo_end;
1202 nfsrv_freenfslock(lop);
1209 nfsrv_freenfslock(lop);
1210 lop = nlop;
1220 nfsrv_freenfslock(struct nfslock *lop)
1223 if (lop->lo_lckfile.le_prev != NULL) {
1224 LIST_REMOVE(lop, lo_lckfile);
1228 LIST_REMOVE(lop, lo_lckowner);
1229 FREE((caddr_t)lop, M_NFSDLOCK);
1313 struct nfslock *lop;
1809 LIST_FOREACH(lop, &lfp->lf_lock, lo_lckfile) {
1810 if (new_lop->lo_end > lop->lo_first &&
1811 new_lop->lo_first < lop->lo_end &&
1813 lop->lo_flags == NFSLCK_WRITE) &&
1814 lckstp != lop->lo_stp &&
1815 (clp != lop->lo_stp->ls_clp ||
1816 lckstp->ls_ownerlen != lop->lo_stp->ls_ownerlen ||
1817 NFSBCMP(lckstp->ls_owner, lop->lo_stp->ls_owner,
1823 ret = nfsrv_clientconflict(lop->lo_stp->ls_clp,&haslock,vp,p);
1844 cfp->cl_clientid.lval[0]=lop->lo_stp->ls_stateid.other[0];
1845 cfp->cl_clientid.lval[1]=lop->lo_stp->ls_stateid.other[1];
1846 cfp->cl_first = lop->lo_first;
1847 cfp->cl_end = lop->lo_end;
1848 cfp->cl_flags = lop->lo_flags;
1849 cfp->cl_ownerlen = lop->lo_stp->ls_ownerlen;
1850 NFSBCOPY(lop->lo_stp->ls_owner, cfp->cl_owner,
3235 struct nfslock *lop, *nlop;
3242 lop = LIST_FIRST(&lfp->lf_lock);
3243 if (lop == LIST_END(&lfp->lf_lock) ||
3244 new_lop->lo_first <= lop->lo_first) {
3247 nlop = LIST_NEXT(lop, lo_lckfile);
3250 lop = nlop;
3251 nlop = LIST_NEXT(lop, lo_lckfile);
3253 LIST_INSERT_AFTER(lop, new_lop, lo_lckfile);
3287 struct nfslock *lop, *tlop, *ilop;
3299 lop = LIST_FIRST(&stp->ls_lock);
3302 lop = LIST_FIRST(&lfp->lf_locallock);
3304 while (lop != NULL) {
3309 if (lop->lo_lfp == lfp) {
3311 if (lop->lo_end >= new_lop->lo_first) {
3312 if (new_lop->lo_end < lop->lo_first) {
3320 if (new_lop->lo_flags == lop->lo_flags ||
3321 (new_lop->lo_first <= lop->lo_first &&
3322 new_lop->lo_end >= lop->lo_end)) {
3330 if (lop->lo_first < new_lop->lo_first)
3331 new_lop->lo_first = lop->lo_first;
3332 if (lop->lo_end > new_lop->lo_end)
3333 new_lop->lo_end = lop->lo_end;
3334 tlop = lop;
3335 lop = LIST_NEXT(lop, lo_lckowner);
3344 if (new_lop->lo_first <= lop->lo_first) {
3352 lop->lo_first = new_lop->lo_end;
3355 if (new_lop->lo_end >= lop->lo_end) {
3364 lop->lo_end = new_lop->lo_first;
3365 ilop = lop;
3366 lop = LIST_NEXT(lop, lo_lckowner);
3387 other_lop->lo_end = lop->lo_end;
3388 other_lop->lo_flags = lop->lo_flags;
3391 lop->lo_end = tmp;
3392 nfsrv_insertlock(other_lop, lop, stp, lfp);
3394 ilop = lop;
3398 ilop = lop;
3399 lop = LIST_NEXT(lop, lo_lckowner);
3400 if (myfile && (lop == NULL || lop->lo_lfp != lfp))
4730 struct nfslock lo, *lop = &lo;
4736 lop->lo_first = nvap->na_size;
4739 lop->lo_first = 0;
4748 lop->lo_end = NFS64BITSSET;
4749 lop->lo_flags = NFSLCK_WRITE;
4757 error = nfsrv_lockctrl(vp, &stp, &lop, NULL, clientid,
4997 struct nfslock *lop, *nlop;
5001 lop = LIST_FIRST(&lfp->lf_locallock);
5002 while (first < end && lop != NULL) {
5003 nlop = LIST_NEXT(lop, lo_lckowner);
5004 if (first >= lop->lo_end) {
5006 lop = nlop;
5007 } else if (first < lop->lo_first) {
5009 if (end <= lop->lo_first) {
5019 NFSLCK_UNLOCK, first, lop->lo_first, cfp,
5023 first = lop->lo_first;
5027 if (end <= lop->lo_end) {
5030 lop->lo_flags, first, end, cfp, p);
5037 lop->lo_flags, first, lop->lo_end, cfp, p);
5040 first = lop->lo_end;
5041 lop = nlop;
5067 struct nfslock *lop;
5075 LIST_FOREACH(lop, &lfp->lf_lock, lo_lckfile) {
5076 KASSERT(prevfirst <= lop->lo_first,
5078 KASSERT(lop->lo_first < lop->lo_end,
5080 prevfirst = lop->lo_first;
5081 if (first >= lop->lo_first &&
5082 first < lop->lo_end)
5088 first = lop->lo_end;
5089 else if (end > lop->lo_first &&
5090 lop->lo_first > first) {
5096 end = lop->lo_first;