Lines Matching refs:fs
196 struct fs *fs; in ufs_update() local
273 fs = ufsp->vfs_fs; in ufs_update()
291 if ((fs->fs_ronly == 0) && in ufs_update()
292 (fs->fs_clean != FSBAD) && in ufs_update()
293 (fs->fs_clean != FSSUSPEND)) { in ufs_update()
305 if (fs->fs_fmod == 0) { in ufs_update()
310 if (fs->fs_ronly != 0) { in ufs_update()
314 "fs = %s update: ro fs mod\n", fs->fs_fsmnt); in ufs_update()
324 fs->fs_fmod = 0; in ufs_update()
577 struct fs *fs; in ufs_sync_indir() local
593 fs = ufsvfsp->vfs_fs; in ufs_sync_indir()
594 bsize = fs->fs_bsize; in ufs_sync_indir()
595 lbn = (daddr_t)lblkno(fs, ip->i_size - 1); in ufs_sync_indir()
598 if (lbn < NDADDR + NINDIR(fs)) { in ufs_sync_indir()
600 blkflush(ip->i_dev, (daddr_t)fsbtodb(fs, ip->i_ib[0])); in ufs_sync_indir()
608 blkflush(ip->i_dev, (daddr_t)fsbtodb(fs, blkno)); in ufs_sync_indir()
613 bp = UFS_BREAD(ufsvfsp, ip->i_dev, (daddr_t)fsbtodb(fs, blkno), bsize); in ufs_sync_indir()
619 clbn = NDADDR + NINDIR(fs); in ufs_sync_indir()
620 for (i = 0; i < NINDIR(fs); i++) { in ufs_sync_indir()
623 clbn += NINDIR(fs); in ufs_sync_indir()
626 blkflush(ip->i_dev, (daddr_t)fsbtodb(fs, blkno)); in ufs_sync_indir()
635 bp = UFS_BREAD(ufsvfsp, ip->i_dev, (daddr_t)fsbtodb(fs, blkno), bsize); in ufs_sync_indir()
641 clbn = NDADDR + NINDIR(fs) + (NINDIR(fs) * NINDIR(fs)); in ufs_sync_indir()
643 for (i = 0; i < NINDIR(fs); i++) { in ufs_sync_indir()
648 blkflush(ip->i_dev, (daddr_t)fsbtodb(fs, indirect_blkno)); in ufs_sync_indir()
650 (daddr_t)fsbtodb(fs, indirect_blkno), bsize); in ufs_sync_indir()
657 for (j = 0; j < NINDIR(fs); j++) { in ufs_sync_indir()
660 clbn += NINDIR(fs); in ufs_sync_indir()
663 blkflush(ip->i_dev, (daddr_t)fsbtodb(fs, blkno)); in ufs_sync_indir()
680 struct fs *fs; in ufs_indirblk_sync() local
695 fs = ufsvfsp->vfs_fs; in ufs_indirblk_sync()
697 lbn = (daddr_t)lblkno(fs, off); in ufs_indirblk_sync()
728 blkflush(ip->i_dev, fsbtodb(fs, nb)); in ufs_indirblk_sync()
734 ip->i_dev, fsbtodb(fs, ob), fs->fs_bsize); in ufs_indirblk_sync()
747 blkflush(ip->i_dev, fsbtodb(fs, nb)); in ufs_indirblk_sync()
875 struct fs *fs = ufsvfsp->vfs_fs; in ufs_checkclean() local
886 if (fs->fs_ronly || in ufs_checkclean()
887 fs->fs_clean == FSBAD || in ufs_checkclean()
888 fs->fs_clean == FSSUSPEND || in ufs_checkclean()
889 fs->fs_clean == FSSTABLE || in ufs_checkclean()
896 if ((fs->fs_clean == FSLOG) && in ufs_checkclean()
897 (((fs->fs_reclaim & FS_RECLAIM) == 0) || in ufs_checkclean()
898 (fs->fs_reclaim & FS_RECLAIMING))) in ufs_checkclean()
906 fs->fs_reclaim |= (FS_CHECKCLEAN | FS_CHECKRECLAIM); in ufs_checkclean()
915 if ((fs->fs_clean == FSLOG) || in ufs_checkclean()
923 ((fs->fs_clean == FSLOG) && in ufs_checkclean()
924 (((fs->fs_reclaim & FS_RECLAIM) == 0) || in ufs_checkclean()
925 (fs->fs_reclaim & FS_RECLAIMING))); in ufs_checkclean()
946 if ((fs->fs_reclaim & FS_RECLAIMING) == 0) in ufs_checkclean()
950 if (fs->fs_reclaim & FS_CHECKRECLAIM) in ufs_checkclean()
954 if ((isreclaim == 0) && (fs->fs_reclaim & FS_RECLAIM)) { in ufs_checkclean()
955 fs->fs_reclaim &= ~FS_RECLAIM; in ufs_checkclean()
964 if (fs->fs_clean != FSLOG) in ufs_checkclean()
968 if (fs->fs_reclaim & FS_CHECKCLEAN) in ufs_checkclean()
973 (fs->fs_clean != FSSTABLE)) { in ufs_checkclean()
974 fs->fs_clean = FSSTABLE; in ufs_checkclean()
991 struct fs *fs = ufsvfsp->vfs_fs; in ufs_setreclaim() local
993 if (ip->i_nlink || fs->fs_ronly || (fs->fs_clean != FSLOG)) in ufs_setreclaim()
1000 if ((fs->fs_reclaim & (FS_RECLAIM | FS_CHECKRECLAIM)) == FS_RECLAIM) in ufs_setreclaim()
1007 fs->fs_reclaim &= ~FS_CHECKRECLAIM; in ufs_setreclaim()
1012 if ((fs->fs_reclaim & FS_RECLAIM) == 0) { in ufs_setreclaim()
1013 fs->fs_reclaim |= FS_RECLAIM; in ufs_setreclaim()
1026 struct fs *fs = ufsvfsp->vfs_fs; in ufs_notclean() local
1034 fs->fs_reclaim &= ~FS_CHECKCLEAN; in ufs_notclean()
1039 if ((fs->fs_clean == FSACTIVE) || (fs->fs_clean == FSLOG) || in ufs_notclean()
1040 (fs->fs_clean == FSBAD) || (fs->fs_clean == FSSUSPEND) || in ufs_notclean()
1041 (fs->fs_ronly)) { in ufs_notclean()
1045 fs->fs_clean = FSACTIVE; in ufs_notclean()
1124 struct fs *fs = ufsvfsp->vfs_fs; in ufs_sbwrite() local
1135 fs->fs_fmod = 1; in ufs_sbwrite()
1145 fs->fs_time = gethrestime_sec(); in ufs_sbwrite()
1146 fs->fs_state = (fs->fs_clean != FSBAD) ? in ufs_sbwrite()
1147 FSOKAY - fs->fs_time : -(FSOKAY - fs->fs_time); in ufs_sbwrite()
1148 switch (fs->fs_clean) { in ufs_sbwrite()
1151 fs->fs_reclaim &= ~FS_RECLAIM; in ufs_sbwrite()
1159 fs->fs_clean = FSACTIVE; in ufs_sbwrite()
1165 fs->fs_reclaim &= ~(FS_CHECKCLEAN | FS_CHECKRECLAIM); in ufs_sbwrite()
1170 TRANS_DELTA(ufsvfsp, ldbtob(SBLOCK), sizeof (struct fs), in ufs_sbwrite()
1175 sav_fs_fmod = fs->fs_fmod; in ufs_sbwrite()
1176 fs->fs_fmod = 0; in ufs_sbwrite()
1182 fs->fs_fmod = sav_fs_fmod; /* reset fs_fmod's incore state */ in ufs_sbwrite()
1240 ufs_construct_si(dev_t dev, struct fs *fs, struct ufsvfs *ufsvfsp) in ufs_construct_si() argument
1244 struct csum *sip = fs->fs_u.fs_csp; in ufs_construct_si()
1271 ncg = MIN(NSIBUF, (fs->fs_ncg - cg)); in ufs_construct_si()
1273 bp->b_blkno = (daddr_t)fsbtodb(fs, cgtod(fs, cg + i)); in ufs_construct_si()
1297 } while (cg < fs->fs_ncg); in ufs_construct_si()
1309 ufs_getsummaryinfo(dev_t dev, struct ufsvfs *ufsvfsp, struct fs *fs) in ufs_getsummaryinfo() argument
1320 TRANS_MATA_SI(ufsvfsp, fs); in ufs_getsummaryinfo()
1325 frags = howmany(fs->fs_cssize, fs->fs_fsize); in ufs_getsummaryinfo()
1326 sip = kmem_alloc((size_t)fs->fs_cssize, KM_SLEEP); in ufs_getsummaryinfo()
1327 fs->fs_u.fs_csp = (struct csum *)sip; in ufs_getsummaryinfo()
1329 if (fs->fs_si == FS_SI_BAD) { in ufs_getsummaryinfo()
1338 bzero(sip, (size_t)fs->fs_cssize); in ufs_getsummaryinfo()
1339 if (ufs_construct_si(dev, fs, ufsvfsp)) { in ufs_getsummaryinfo()
1340 kmem_free(fs->fs_u.fs_csp, fs->fs_cssize); in ufs_getsummaryinfo()
1341 fs->fs_u.fs_csp = NULL; in ufs_getsummaryinfo()
1346 size = fs->fs_bsize; in ufs_getsummaryinfo()
1347 for (i = 0; i < frags; i += fs->fs_frag) { in ufs_getsummaryinfo()
1348 if (i + fs->fs_frag > frags) in ufs_getsummaryinfo()
1353 size = (frags - i) * fs->fs_fsize; in ufs_getsummaryinfo()
1355 (daddr_t)fsbtodb(fs, fs->fs_csaddr+i), size); in ufs_getsummaryinfo()
1358 kmem_free(fs->fs_u.fs_csp, fs->fs_cssize); in ufs_getsummaryinfo()
1359 fs->fs_u.fs_csp = NULL; in ufs_getsummaryinfo()
1368 bzero((caddr_t)&fs->fs_cstotal, sizeof (fs->fs_cstotal)); in ufs_getsummaryinfo()
1369 for (i = 0; i < fs->fs_ncg; ++i) { in ufs_getsummaryinfo()
1370 fs->fs_cstotal.cs_ndir += fs->fs_cs(fs, i).cs_ndir; in ufs_getsummaryinfo()
1371 fs->fs_cstotal.cs_nbfree += fs->fs_cs(fs, i).cs_nbfree; in ufs_getsummaryinfo()
1372 fs->fs_cstotal.cs_nifree += fs->fs_cs(fs, i).cs_nifree; in ufs_getsummaryinfo()
1373 fs->fs_cstotal.cs_nffree += fs->fs_cs(fs, i).cs_nffree; in ufs_getsummaryinfo()
1385 ufs_putsummaryinfo(dev_t dev, struct ufsvfs *ufsvfsp, struct fs *fs) in ufs_putsummaryinfo() argument
1398 if ((fs->fs_si != FS_SI_BAD) || !ufsvfsp->vfs_nolog_si) { in ufs_putsummaryinfo()
1405 bp->b_bufsize = size = fs->fs_bsize; in ufs_putsummaryinfo()
1409 frags = howmany(fs->fs_cssize, fs->fs_fsize); in ufs_putsummaryinfo()
1410 sip = (caddr_t)fs->fs_u.fs_csp; in ufs_putsummaryinfo()
1413 for (error = 0, i = 0; (i < frags) && (error == 0); i += fs->fs_frag) { in ufs_putsummaryinfo()
1414 if (i + fs->fs_frag > frags) { in ufs_putsummaryinfo()
1419 size = (frags - i) * fs->fs_fsize; in ufs_putsummaryinfo()
1422 bp->b_blkno = (daddr_t)fsbtodb(fs, fs->fs_csaddr+i); in ufs_putsummaryinfo()
1429 kmem_free(bp->b_un.b_addr, fs->fs_bsize); in ufs_putsummaryinfo()
1431 fs->fs_si = FS_SI_OK; in ufs_putsummaryinfo()
1474 fragacct(struct fs *fs, int fragmap, int32_t *fraglist, int cnt) in fragacct() argument
1483 inblk = (int)(fragtbl[fs->fs_frag][fragmap]) << 1; in fragacct()
1485 for (siz = 1; siz < fs->fs_frag; siz++) { in fragacct()
1486 if ((inblk & (1 << (siz + (fs->fs_frag % NBBY)))) == 0) in fragacct()
1490 for (pos = siz; pos <= fs->fs_frag; pos++) { in fragacct()
1512 isblock(struct fs *fs, uchar_t *cp, daddr_t h) in isblock() argument
1516 ASSERT(fs->fs_frag == 8 || fs->fs_frag == 4 || fs->fs_frag == 2 || \ in isblock()
1517 fs->fs_frag == 1); in isblock()
1521 switch ((int)fs->fs_frag) { in isblock()
1536 fs->fs_frag); in isblock()
1546 clrblock(struct fs *fs, uchar_t *cp, daddr_t h) in clrblock() argument
1548 ASSERT(fs->fs_frag == 8 || fs->fs_frag == 4 || fs->fs_frag == 2 || \ in clrblock()
1549 fs->fs_frag == 1); in clrblock()
1553 switch ((int)fs->fs_frag) { in clrblock()
1569 fs->fs_frag); in clrblock()
1579 isclrblock(struct fs *fs, uchar_t *cp, daddr_t h) in isclrblock() argument
1586 frag = fs->fs_frag; in isclrblock()
1603 fs->fs_frag); in isclrblock()
1614 setblock(struct fs *fs, uchar_t *cp, daddr_t h) in setblock() argument
1616 ASSERT(fs->fs_frag == 8 || fs->fs_frag == 4 || fs->fs_frag == 2 || \ in setblock()
1617 fs->fs_frag == 1); in setblock()
1621 switch ((int)fs->fs_frag) { in setblock()
1637 fs->fs_frag); in setblock()