Lines Matching defs:mvp

3201 	struct vnode *vp, *mvp, *rootvp = NULL;
3222 MNT_VNODE_FOREACH_ALL(vp, mp, mvp) {
3227 MNT_VNODE_FOREACH_ALL_ABORT(mp, mvp);
3253 MNT_VNODE_FOREACH_ALL_ABORT(mp, mvp);
4196 struct vnode *vp, *mvp;
4203 MNT_VNODE_FOREACH_ACTIVE(vp, mp, mvp) {
5414 __mnt_vnode_next_all(struct vnode **mvp, struct mount *mp)
5421 KASSERT((*mvp)->v_mount == mp, ("marker vnode mount list mismatch"));
5422 for (vp = TAILQ_NEXT(*mvp, v_nmntvnodes); vp != NULL;
5435 __mnt_vnode_markerfree_all(mvp, mp);
5440 TAILQ_REMOVE(&mp->mnt_nvnodelist, *mvp, v_nmntvnodes);
5441 TAILQ_INSERT_AFTER(&mp->mnt_nvnodelist, vp, *mvp, v_nmntvnodes);
5447 __mnt_vnode_first_all(struct vnode **mvp, struct mount *mp)
5451 *mvp = malloc(sizeof(struct vnode), M_VNODE_MARKER, M_WAITOK | M_ZERO);
5454 (*mvp)->v_mount = mp;
5455 (*mvp)->v_type = VMARKER;
5471 free(*mvp, M_VNODE_MARKER);
5472 *mvp = NULL;
5475 TAILQ_INSERT_AFTER(&mp->mnt_nvnodelist, vp, *mvp, v_nmntvnodes);
5481 __mnt_vnode_markerfree_all(struct vnode **mvp, struct mount *mp)
5484 if (*mvp == NULL) {
5491 KASSERT((*mvp)->v_mount == mp, ("marker vnode mount list mismatch"));
5492 TAILQ_REMOVE(&mp->mnt_nvnodelist, *mvp, v_nmntvnodes);
5495 free(*mvp, M_VNODE_MARKER);
5496 *mvp = NULL;
5504 mnt_vnode_markerfree_active(struct vnode **mvp, struct mount *mp)
5507 KASSERT((*mvp)->v_mount == mp, ("marker vnode mount list mismatch"));
5512 free(*mvp, M_VNODE_MARKER);
5513 *mvp = NULL;
5526 mnt_vnode_next_active_relock(struct vnode *mvp, struct mount *mp,
5532 VNASSERT(mvp->v_mount == mp && mvp->v_type == VMARKER &&
5533 TAILQ_NEXT(mvp, v_actfreelist) != NULL, mvp,
5542 TAILQ_REMOVE(&mp->mnt_activevnodelist, mvp, v_actfreelist);
5543 TAILQ_INSERT_BEFORE(vp, mvp, v_actfreelist);
5570 tmp = mvp;
5595 mnt_vnode_next_active(struct vnode **mvp, struct mount *mp)
5600 KASSERT((*mvp)->v_mount == mp, ("marker vnode mount list mismatch"));
5602 vp = TAILQ_NEXT(*mvp, v_actfreelist);
5614 !mnt_vnode_next_active_relock(*mvp, mp, vp))
5625 TAILQ_REMOVE(&mp->mnt_activevnodelist, *mvp, v_actfreelist);
5630 mnt_vnode_markerfree_active(mvp, mp);
5633 TAILQ_INSERT_AFTER(&mp->mnt_activevnodelist, vp, *mvp, v_actfreelist);
5641 __mnt_vnode_next_active(struct vnode **mvp, struct mount *mp)
5647 return (mnt_vnode_next_active(mvp, mp));
5651 __mnt_vnode_first_active(struct vnode **mvp, struct mount *mp)
5655 *mvp = malloc(sizeof(struct vnode), M_VNODE_MARKER, M_WAITOK | M_ZERO);
5659 (*mvp)->v_type = VMARKER;
5660 (*mvp)->v_mount = mp;
5666 mnt_vnode_markerfree_active(mvp, mp);
5669 TAILQ_INSERT_BEFORE(vp, *mvp, v_actfreelist);
5670 return (mnt_vnode_next_active(mvp, mp));
5674 __mnt_vnode_markerfree_active(struct vnode **mvp, struct mount *mp)
5677 if (*mvp == NULL)
5681 TAILQ_REMOVE(&mp->mnt_activevnodelist, *mvp, v_actfreelist);
5683 mnt_vnode_markerfree_active(mvp, mp);