Lines Matching defs:np

315  * np->n_mtx : Protects the fields in the nfsnode.
331 struct nfsnode *np;
341 np = VTONFS(vp);
342 if (np == NULL)
344 NFSLOCKNODE(np);
345 if ((np->n_flag & NVNSETSZSKIP) == 0 || (lktype != LK_SHARED &&
348 NFSUNLOCKNODE(np);
360 NFSUNLOCKNODE(np);
366 NFSUNLOCKNODE(np);
370 NFSUNLOCKNODE(np);
379 MPASS(vp->v_data == np);
380 NFSLOCKNODE(np);
381 if ((np->n_flag & NVNSETSZSKIP) == 0) {
382 NFSUNLOCKNODE(np);
386 np->n_flag &= ~NVNSETSZSKIP;
387 nsize = np->n_size;
388 NFSUNLOCKNODE(np);
405 struct nfsnode *np = VTONFS(vp);
414 NFSLOCKNODE(np);
416 if (np->n_accesscache[i].uid == cred->cr_uid) {
417 np->n_accesscache[i].mode = rmode;
418 np->n_accesscache[i].stamp = time_second;
421 if (i > 0 && np->n_accesscache[i].stamp <
422 np->n_accesscache[lrupos].stamp)
426 np->n_accesscache[lrupos].uid = cred->cr_uid;
427 np->n_accesscache[lrupos].mode = rmode;
428 np->n_accesscache[lrupos].stamp = time_second;
430 NFSUNLOCKNODE(np);
458 struct nfsnode *np = VTONFS(vp);
525 NFSLOCKNODE(np);
527 if (ap->a_cred->cr_uid == np->n_accesscache[i].uid) {
528 if (time_second < (np->n_accesscache[i].stamp
530 (np->n_accesscache[i].mode & mode) == mode) {
537 NFSUNLOCKNODE(np);
569 NFSLOCKNODE(np);
576 NFSUNLOCKNODE(np);
602 NFSUNLOCKNODE(np);
619 struct nfsnode *np = VTONFS(vp);
646 NFSLOCKNODE(np);
647 if (np->n_flag & NMODIFIED) {
648 NFSUNLOCKNODE(np);
660 NFSLOCKNODE(np);
661 np->n_attrstamp = 0;
664 np->n_direofoffset = 0;
665 NFSUNLOCKNODE(np);
672 NFSLOCKNODE(np);
673 np->n_mtime = vattr.va_mtime;
675 np->n_change = vattr.va_filerev;
677 NFSUNLOCKNODE(np);
684 NFSLOCKNODE(np);
685 if ((NFS_ISV4(vp) && np->n_change != vattr.va_filerev) ||
686 NFS_TIMESPEC_COMPARE(&np->n_mtime, &vattr.va_mtime)) {
688 np->n_direofoffset = 0;
689 NFSUNLOCKNODE(np);
701 NFSLOCKNODE(np);
702 np->n_mtime = vattr.va_mtime;
704 np->n_change = vattr.va_filerev;
713 if (np->n_directio_opens == 0) {
714 NFSUNLOCKNODE(np);
726 NFSLOCKNODE(np);
727 np->n_flag |= NNONCACHE;
729 np->n_directio_opens++;
734 np->n_flag |= NWRITEOPENED;
744 cred = np->n_writecred;
745 np->n_writecred = crhold(ap->a_cred);
748 NFSUNLOCKNODE(np);
777 np = VTONFS(vp);
778 NFSLOCKNODE(np);
779 np->n_mtime = np->n_vattr.na_mtime;
780 NFSUNLOCKNODE(np);
825 struct nfsnode *np = VTONFS(vp);
858 NFSLOCKNODE(np);
859 if (np->n_flag & NMODIFIED) {
860 NFSUNLOCKNODE(np);
871 * We cannot clear the NMODIFIED bit in np->n_flag due to
884 /* np->n_flag &= ~NMODIFIED; */
899 * np->n_flag &= ~NMODIFIED;
911 NFSLOCKNODE(np);
929 np->n_attrstamp = 0;
932 if (np->n_flag & NWRITEERR) {
933 np->n_flag &= ~NWRITEERR;
934 error = np->n_error;
936 NFSUNLOCKNODE(np);
948 np->n_change = nfsva.na_filerev;
965 NFSLOCKNODE(np);
966 KASSERT((np->n_directio_opens > 0),
968 np->n_directio_opens--;
969 if (np->n_directio_opens == 0)
970 np->n_flag &= ~NNONCACHE;
971 NFSUNLOCKNODE(np);
986 struct nfsnode *np = VTONFS(vp);
997 NFSLOCKNODE(np);
998 if (np->n_flag & (NACC | NUPD))
999 np->n_flag |= NCHG;
1000 NFSUNLOCKNODE(np);
1048 struct nfsnode *np = VTONFS(vp);
1101 * we must set np->n_size now to avoid vinvalbuf
1105 NFSLOCKNODE(np);
1106 tsize = np->n_size;
1107 NFSUNLOCKNODE(np);
1109 NFSLOCKNODE(np);
1110 if (np->n_flag & NMODIFIED) {
1111 tsize = np->n_size;
1112 NFSUNLOCKNODE(np);
1125 NFSUNLOCKNODE(np);
1127 * np->n_size has already been set to vap->va_size
1130 * ncl_meta_setsize() and could modify np->n_size.
1132 NFSLOCKNODE(np);
1133 np->n_vattr.na_size = np->n_size = vap->va_size;
1134 NFSUNLOCKNODE(np);
1137 NFSLOCKNODE(np);
1139 (np->n_flag & NMODIFIED) && vp->v_type == VREG) {
1140 NFSUNLOCKNODE(np);
1145 NFSUNLOCKNODE(np);
1151 NFSLOCKNODE(np);
1152 np->n_localmodtime = ts;
1153 NFSUNLOCKNODE(np);
1155 NFSLOCKNODE(np);
1156 np->n_size = np->n_vattr.na_size = tsize;
1158 NFSUNLOCKNODE(np);
1171 struct nfsnode *np = VTONFS(vp);
1176 NFSLOCKNODE(np);
1178 np->n_accesscache[i].stamp = 0;
1179 np->n_flag |= NDELEGMOD;
1180 NFSUNLOCKNODE(np);
1209 struct nfsnode *np, *newnp;
1225 np = VTONFS(dvp);
1228 NFSLOCKNODE(np);
1229 while (NFSHASNFSV4(nmp) && (np->n_flag & NREMOVEINPROG)) {
1230 np->n_flag |= NREMOVEWANT;
1231 (void) msleep((caddr_t)np, &np->n_mtx, PZERO, "nfslkup", 0);
1233 NFSUNLOCKNODE(np);
1381 NFSLOCKNODE(np);
1382 if (timespeccmp(&np->n_vattr.na_mtime,
1384 NFSUNLOCKNODE(np);
1388 NFSUNLOCKNODE(np);
1397 if (NFS_CMPFH(np, nfhp->nfh_fh, nfhp->nfh_len)) {
1401 error = nfscl_nget(mp, dvp, nfhp, cnp, td, &np, LK_EXCLUSIVE);
1404 newvp = NFSTOV(np);
1413 NFSLOCKNODE(np);
1414 if (timespecisset(&np->n_localmodtime) &&
1415 timespeccmp(&np->n_localmodtime, &ts, >=)) {
1420 NFSUNLOCKNODE(np);
1444 error = nfscl_nget(mp, dvp, nfhp, cnp, td, &np,
1447 newvp = NFSTOV(np);
1464 } else if (NFS_CMPFH(np, nfhp->nfh_fh, nfhp->nfh_len)) {
1471 error = nfscl_nget(mp, dvp, nfhp, cnp, td, &np,
1475 newvp = NFSTOV(np);
1484 NFSLOCKNODE(np);
1485 if (timespecisset(&np->n_localmodtime) &&
1486 timespeccmp(&np->n_localmodtime, &ts, >=)) {
1491 NFSUNLOCKNODE(np);
1495 !(np->n_flag & NMODIFIED)) {
1502 NFSLOCKNODE(np);
1503 np->n_attrstamp = 0;
1505 NFSUNLOCKNODE(np);
1650 struct nfsnode *np = NULL, *dnp;
1674 curthread, &np, LK_EXCLUSIVE);
1679 newvp = NFSTOV(np);
1747 struct nfsnode *np = NULL, *dnp;
1788 curthread, &np, LK_EXCLUSIVE);
1793 newvp = NFSTOV(np);
1870 struct nfsnode *np = VTONFS(vp);
1877 else if (vrefcnt(vp) == 1 || (np->n_sillyrename &&
1905 } else if (!np->n_sillyrename)
1907 NFSLOCKNODE(np);
1908 np->n_attrstamp = 0;
1909 NFSUNLOCKNODE(np);
2156 struct nfsnode *np, *tdnp;
2183 np = VTONFS(vp);
2184 NFSLOCKNODE(np);
2185 np->n_attrstamp = 0;
2186 NFSUNLOCKNODE(np);
2220 struct nfsnode *np = NULL, *dnp;
2230 &np, LK_EXCLUSIVE);
2232 newvp = NFSTOV(np);
2246 cnp->cn_cred, curthread, &np);
2248 newvp = NFSTOV(np);
2298 struct nfsnode *np = NULL, *dnp;
2324 &np, LK_EXCLUSIVE);
2326 newvp = NFSTOV(np);
2335 cnp->cn_cred, curthread, &np);
2337 newvp = NFSTOV(np);
2420 struct nfsnode *np = VTONFS(vp);
2434 NFSLOCKNODE(np);
2435 if (np->n_direofoffset > 0 && uio->uio_offset >= np->n_direofoffset &&
2436 (np->n_flag & NMODIFIED) == 0) {
2437 NFSUNLOCKNODE(np);
2439 NFSLOCKNODE(np);
2440 if ((NFS_ISV4(vp) && np->n_change == vattr.va_filerev) ||
2441 !NFS_TIMESPEC_COMPARE(&np->n_mtime, &vattr.va_mtime)) {
2442 NFSUNLOCKNODE(np);
2448 NFSUNLOCKNODE(np);
2451 NFSUNLOCKNODE(np);
2631 struct nfsnode *np;
2637 np = VTONFS(vp);
2667 curthread, &np);
2668 np->n_sillyrename = sp;
2690 struct nfsnode *np, *dnp = VTONFS(dvp);
2705 np = *npp;
2706 vp = NFSTOV(np);
2711 if (np->n_v4 != NULL && nfsva.na_type == VREG &&
2712 (np->n_v4->n4_namelen != len ||
2713 NFSBCMP(name, NFS4NODENAME(np->n_v4), len) ||
2714 dnp->n_fhp->nfh_len != np->n_v4->n4_fhlen ||
2715 NFSBCMP(dnp->n_fhp->nfh_fh, np->n_v4->n4_data,
2717 free(np->n_v4, M_NFSV4NODE);
2718 np->n_v4 = malloc(
2722 np->n_v4->n4_fhlen = dnp->n_fhp->nfh_len;
2723 np->n_v4->n4_namelen = len;
2724 NFSBCOPY(dnp->n_fhp->nfh_fh, np->n_v4->n4_data,
2726 NFSBCOPY(name, NFS4NODENAME(np->n_v4), len);
2730 onfhp = np->n_fhp;
2735 np->n_fhp = nfhp;
2738 newvp = NFSTOV(np);
2747 &np, LK_EXCLUSIVE);
2750 newvp = NFSTOV(np);
2759 NFSLOCKNODE(np);
2760 if (timespecisset(&np->n_localmodtime) &&
2761 timespeccmp(&np->n_localmodtime, &ts, >=)) {
2766 NFSUNLOCKNODE(np);
2787 *npp = np;
2803 struct nfsnode *np;
2807 np = VTONFS(vp);
2810 if (NFSHASPNFS(nmp) && (np->n_flag & NDSCOMMIT) != 0) {
2816 NFSLOCKNODE(np);
2817 np->n_flag &= ~NDSCOMMIT;
2818 NFSUNLOCKNODE(np);
2908 struct nfsnode *np = VTONFS(vp);
3201 NFSLOCKNODE(np);
3202 np->n_attrstamp = 0;
3204 NFSLOCKNODE(np);
3205 if (np->n_flag & NWRITEERR) {
3206 error = np->n_error;
3207 np->n_flag &= ~NWRITEERR;
3211 np->n_flag &= ~NMODIFIED;
3212 NFSUNLOCKNODE(np);
3231 NFSLOCKNODE(np);
3232 np->n_localmodtime = ts;
3233 NFSUNLOCKNODE(np);
3246 struct nfsnode *np = VTONFS(ap->a_vp);
3260 size = np->n_size;
3275 NFSLOCKNODE(np);
3276 np->n_flag |= NHASBEENLOCKED;
3277 NFSUNLOCKNODE(np);
3317 NFSLOCKNODE(np);
3318 np->n_flag |= NMIGHTBELOCKED;
3319 NFSUNLOCKNODE(np);
3327 ret = nfsrpc_advlock(vp, np->n_size, ap->a_op,
3361 if ((np->n_flag & NMODIFIED) == 0) {
3362 np->n_attrstamp = 0;
3366 if ((np->n_flag & NMODIFIED) || ret ||
3367 np->n_change != va.va_filerev) {
3369 np->n_attrstamp = 0;
3373 np->n_mtime = va.va_mtime;
3374 np->n_change = va.va_filerev;
3378 NFSLOCKNODE(np);
3379 np->n_flag |= NHASBEENLOCKED;
3380 NFSUNLOCKNODE(np);
3424 struct nfsnode *np = VTONFS(vp);
3426 printf("\tfileid %jd fsid 0x%jx", (uintmax_t)np->n_vattr.na_fileid,
3427 (uintmax_t)np->n_vattr.na_fsid);
3480 struct nfsnode *np = VTONFS(ap->a_vp);
3486 NFSLOCKNODE(np);
3487 np->n_flag |= NACC;
3488 vfs_timestamp(&np->n_atim);
3489 NFSUNLOCKNODE(np);
3500 struct nfsnode *np = VTONFS(ap->a_vp);
3505 NFSLOCKNODE(np);
3506 np->n_flag |= NUPD;
3507 vfs_timestamp(&np->n_mtim);
3508 NFSUNLOCKNODE(np);
3521 struct nfsnode *np = VTONFS(vp);
3525 NFSLOCKNODE(np);
3526 if (np->n_flag & (NACC | NUPD)) {
3528 if (np->n_flag & NACC)
3529 np->n_atim = ts;
3530 if (np->n_flag & NUPD)
3531 np->n_mtim = ts;
3532 np->n_flag |= NCHG;
3536 if (np->n_flag & NACC)
3537 vattr.va_atime = np->n_atim;
3538 if (np->n_flag & NUPD)
3539 vattr.va_mtime = np->n_mtim;
3540 NFSUNLOCKNODE(np);
3545 NFSUNLOCKNODE(np);
3635 struct nfsnode *np;
3643 np = VTONFS(vp);
3672 NFSLOCKNODE(np);
3673 np->n_localmodtime = ts;
3674 NFSUNLOCKNODE(np);
3705 struct nfsnode *np;
3714 np = VTONFS(vp);
3731 if ((uint64_t)*ap->a_offset < np->n_size) {
3733 mlen = omin((off_t)np->n_size - *ap->a_offset, tlen);
3753 NFSLOCKNODE(np);
3754 np->n_localmodtime = ts;
3755 NFSUNLOCKNODE(np);