Lines Matching refs:devvp

129 static int iso_mountfs(struct vnode *devvp, struct mount *mp,
185 iso_checkupdate(const struct vnode *devvp, const struct iso_mnt *imp, in iso_checkupdate() argument
189 if (devvp != imp->im_devvp && devvp->v_rdev != imp->im_devvp->v_rdev) in iso_checkupdate()
256 struct vnode *devvp; in cd9660_mount() local
298 NSM_FOLLOW_NOEMULROOT, &devvp); in cd9660_mount()
302 if (devvp->v_type != VBLK) { in cd9660_mount()
303 vrele(devvp); in cd9660_mount()
306 if (bdevsw_lookup(devvp->v_rdev) == NULL) { in cd9660_mount()
307 vrele(devvp); in cd9660_mount()
314 vn_lock(devvp, LK_EXCLUSIVE | LK_RETRY); in cd9660_mount()
316 KAUTH_REQ_SYSTEM_MOUNT_DEVICE, mp, devvp, KAUTH_ARG(VREAD)); in cd9660_mount()
321 error = VOP_OPEN(devvp, FREAD, FSCRED); in cd9660_mount()
324 VOP_UNLOCK(devvp); in cd9660_mount()
325 error = iso_mountfs(devvp, mp, l, args); in cd9660_mount()
326 vn_lock(devvp, LK_EXCLUSIVE | LK_RETRY); in cd9660_mount()
328 (void)VOP_CLOSE(devvp, FREAD, NOCRED); in cd9660_mount()
331 VOP_UNLOCK(devvp); in cd9660_mount()
334 if ((error = iso_checkupdate(devvp, imp, args)) != 0) in cd9660_mount()
336 VOP_UNLOCK(devvp); in cd9660_mount()
337 vrele(devvp); in cd9660_mount()
343 VOP_UNLOCK(devvp); in cd9660_mount()
344 vrele(devvp); in cd9660_mount()
390 iso_mountfs(struct vnode *devvp, struct mount *mp, struct lwp *l, in iso_mountfs() argument
395 dev_t dev = devvp->v_rdev; in iso_mountfs()
411 vn_lock(devvp, LK_EXCLUSIVE | LK_RETRY); in iso_mountfs()
412 error = vinvalbuf(devvp, V_SAVE, l->l_cred, l, 0, 0); in iso_mountfs()
413 VOP_UNLOCK(devvp); in iso_mountfs()
423 error = VOP_IOCTL(devvp, DIOCGDINFO, &label, FREAD, FSCRED); in iso_mountfs()
429 error = VOP_IOCTL(devvp, CDIOREADMSADDR, &sess, 0, FSCRED); in iso_mountfs()
438 if ((error = bread(devvp, (iso_blknum+sess) * btodb(iso_bsize), in iso_mountfs()
507 isomp->im_devvp = devvp; in iso_mountfs()
584 spec_node_setmountedfs(devvp, mp); in iso_mountfs()