Lines Matching refs:ufsvfsp
210 lufs_unsnarf(ufsvfs_t *ufsvfsp) in lufs_unsnarf() argument
215 ul = ufsvfsp->vfs_log; in lufs_unsnarf()
264 ufsvfsp->vfs_log = NULL; in lufs_unsnarf()
268 lufs_snarf(ufsvfs_t *ufsvfsp, struct fs *fs, int ronly) in lufs_snarf() argument
287 bp = UFS_BREAD(ufsvfsp, ufsvfsp->vfs_dev, logbtodb(fs, fs->fs_logbno), in lufs_snarf()
334 bp = UFS_BREAD(ufsvfsp, ufsvfsp->vfs_dev, bno, DEV_BSIZE); in lufs_snarf()
337 bp = UFS_BREAD(ufsvfsp, ufsvfsp->vfs_dev, bno + 1, DEV_BSIZE); in lufs_snarf()
385 ul->un_ufsvfs = ufsvfsp; in lufs_snarf()
386 ul->un_dev = ufsvfsp->vfs_dev; in lufs_snarf()
404 ufsvfsp->vfs_log = ul; in lufs_snarf()
427 lufs_unsnarf(ufsvfsp); in lufs_snarf()
503 ufsvfs_t *ufsvfsp, in lufs_initialize() argument
515 bp = UFS_GETBLK(ufsvfsp, ufsvfsp->vfs_dev, bno, dbtob(LS_SECTORS)); in lufs_initialize()
520 ud->od_maxtransfer = MIN(ufsvfsp->vfs_iotransz, ldl_maxtransfer); in lufs_initialize()
545 UFS_BWRITE2(ufsvfsp, bp); in lufs_initialize()
560 lufs_free(struct ufsvfs *ufsvfsp) in lufs_free() argument
566 struct fs *fs = ufsvfsp->vfs_fs; in lufs_free()
585 ufsvfsp->vfs_ulockfs.ul_sbowner = curthread; in lufs_free()
586 mutex_enter(&ufsvfsp->vfs_lock); in lufs_free()
591 ufs_sbwrite(ufsvfsp); in lufs_free()
592 mutex_exit(&ufsvfsp->vfs_lock); in lufs_free()
593 ufsvfsp->vfs_ulockfs.ul_sbowner = (kthread_id_t)-1; in lufs_free()
594 if (ufsvfsp->vfs_bufp->b_flags & B_ERROR) { in lufs_free()
605 bp = UFS_BREAD(ufsvfsp, ufsvfsp->vfs_dev, logbtodb(fs, logbno), in lufs_free()
615 ip = ufs_alloc_inode(ufsvfsp, UFSROOTINO); in lufs_free()
630 ufsvfsp->vfs_ulockfs.ul_sbowner = curthread; in lufs_free()
631 sbupdate(ufsvfsp->vfs_vfs); in lufs_free()
632 ufsvfsp->vfs_ulockfs.ul_sbowner = (kthread_id_t)-1; in lufs_free()
633 bflush(ufsvfsp->vfs_dev); in lufs_free()
634 error = bfinval(ufsvfsp->vfs_dev, 0); in lufs_free()
661 lufs_alloc(struct ufsvfs *ufsvfsp, struct fiolog *flp, size_t minb, cred_t *cr) in lufs_alloc() argument
667 struct fs *fs = ufsvfsp->vfs_fs; in lufs_alloc()
678 ufsvfsp->vfs_ulockfs.ul_sbowner = curthread; in lufs_alloc()
679 mutex_enter(&ufsvfsp->vfs_lock); in lufs_alloc()
681 ufs_sbwrite(ufsvfsp); in lufs_alloc()
682 mutex_exit(&ufsvfsp->vfs_lock); in lufs_alloc()
683 ufsvfsp->vfs_ulockfs.ul_sbowner = (kthread_id_t)-1; in lufs_alloc()
691 ip = ufs_alloc_inode(ufsvfsp, UFSROOTINO); in lufs_alloc()
694 fno = contigpref(ufsvfsp, nb + fs->fs_bsize, minb); in lufs_alloc()
700 bp = UFS_BREAD(ufsvfsp, ufsvfsp->vfs_dev, bno, fs->fs_bsize); in lufs_alloc()
773 UFS_BWRITE2(ufsvfsp, bp); in lufs_alloc()
781 error = lufs_initialize(ufsvfsp, logbtodb(fs, ebp->extents[0].pbno), in lufs_alloc()
795 ufsvfsp->vfs_ulockfs.ul_sbowner = curthread; in lufs_alloc()
796 sbupdate(ufsvfsp->vfs_vfs); in lufs_alloc()
797 ufsvfsp->vfs_ulockfs.ul_sbowner = (kthread_id_t)-1; in lufs_alloc()
798 bflush(ufsvfsp->vfs_dev); in lufs_alloc()
799 error = bfinval(ufsvfsp->vfs_dev, 1); in lufs_alloc()
802 if (ufsvfsp->vfs_bufp->b_flags & B_ERROR) { in lufs_alloc()
810 ufsvfsp->vfs_ulockfs.ul_sbowner = curthread; in lufs_alloc()
811 mutex_enter(&ufsvfsp->vfs_lock); in lufs_alloc()
813 ufs_sbwrite(ufsvfsp); in lufs_alloc()
814 mutex_exit(&ufsvfsp->vfs_lock); in lufs_alloc()
815 ufsvfsp->vfs_ulockfs.ul_sbowner = (kthread_id_t)-1; in lufs_alloc()
835 (void) lufs_free(ufsvfsp); in lufs_alloc()
852 ufsvfs_t *ufsvfsp = ip->i_ufsvfs; in lufs_disable() local
853 struct fs *fs = ufsvfsp->vfs_fs; in lufs_disable()
862 if (fs->fs_logbno == 0 || ufsvfsp->vfs_log == NULL) in lufs_disable()
893 if (ufsvfsp->vfs_log == NULL || fs->fs_logbno == 0) in lufs_disable()
917 ufs_thread_suspend(&ufsvfsp->vfs_reclaim); in lufs_disable()
918 ufs_thread_exit(&ufsvfsp->vfs_delete); in lufs_disable()
920 vfs_lock_wait(ufsvfsp->vfs_vfs); in lufs_disable()
921 ulp = &ufsvfsp->vfs_ulockfs; in lufs_disable()
926 (void) ufs_flush(ufsvfsp->vfs_vfs); in lufs_disable()
928 TRANS_MATA_UMOUNT(ufsvfsp); in lufs_disable()
929 ufsvfsp->vfs_domatamap = 0; in lufs_disable()
939 (void) lufs_unsnarf(ufsvfsp); in lufs_disable()
944 vfs_setmntopt(ufsvfsp->vfs_vfs, MNTOPT_NOLOGGING, NULL, 0); in lufs_disable()
945 vfs_unlock(ufsvfsp->vfs_vfs); in lufs_disable()
948 ufsvfsp->vfs_nolog_si = 0; in lufs_disable()
953 (void) lufs_free(ufsvfsp); in lufs_disable()
958 ufs_thread_continue(&ufsvfsp->vfs_reclaim); in lufs_disable()
987 ufsvfs_t *ufsvfsp = ip->i_ufsvfs; in lufs_enable() local
992 vfs_t *vfsp = ufsvfsp->vfs_vfs; in lufs_enable()
1002 if (ufsvfsp->vfs_log) { in lufs_enable()
1008 fs = ufsvfsp->vfs_fs; in lufs_enable()
1102 ul = ufsvfsp->vfs_log; in lufs_enable()
1139 ulp = &ufsvfsp->vfs_ulockfs; in lufs_enable()
1163 if (fs->fs_logbno && ufsvfsp->vfs_log) { in lufs_enable()
1189 error = lufs_alloc(ufsvfsp, flp, cg_minlogsize, cr); in lufs_enable()
1196 error = lufs_snarf(ufsvfsp, fs, 0); in lufs_enable()
1213 TRANS_DOMATAMAP(ufsvfsp); in lufs_enable()
1214 TRANS_MATA_MOUNT(ufsvfsp); in lufs_enable()
1215 TRANS_MATA_SI(ufsvfsp, fs); in lufs_enable()
1216 ufs_thread_start(&ufsvfsp->vfs_delete, ufs_thread_delete, vfsp); in lufs_enable()
1220 ufs_thread_start(&ufsvfsp->vfs_reclaim, in lufs_enable()
1245 mutex_enter(&ufsvfsp->vfs_lock); in lufs_enable()
1248 UFS_BWRITE2(NULL, ufsvfsp->vfs_bufp); in lufs_enable()
1249 mutex_exit(&ufsvfsp->vfs_lock); in lufs_enable()
1261 (void) lufs_unsnarf(ufsvfsp); in lufs_enable()
1264 (void) lufs_free(ufsvfsp); in lufs_enable()