/freebsd-12-stable/sys/fs/nandfs/ |
H A D | nandfs_buffer.c | 67 nandfs_dirty_bufs_increment(struct nandfs_device *fsdev) argument 70 mtx_lock(&fsdev->nd_mutex); 71 KASSERT(fsdev->nd_dirty_bufs >= 0, ("negative nd_dirty_bufs")); 72 fsdev->nd_dirty_bufs++; 73 mtx_unlock(&fsdev->nd_mutex); 77 nandfs_dirty_bufs_decrement(struct nandfs_device *fsdev) argument 80 mtx_lock(&fsdev->nd_mutex); 81 KASSERT(fsdev->nd_dirty_bufs > 0, 83 fsdev->nd_dirty_bufs--; 84 mtx_unlock(&fsdev [all...] |
H A D | nandfs_segment.c | 65 nandfs_new_segment(struct nandfs_device *fsdev) argument 70 error = nandfs_alloc_segment(fsdev, &new); 72 fsdev->nd_seg_num = fsdev->nd_next_seg_num; 73 fsdev->nd_next_seg_num = new; 76 __func__, (uintmax_t)fsdev->nd_seg_num, (uintmax_t)new, error)); 88 struct nandfs_device *fsdev; local 95 fsdev = seginfo->fsdev; 97 blks_per_seg = fsdev 214 create_seginfo(struct nandfs_device *fsdev, struct nandfs_seginfo **seginfo) argument 278 struct nandfs_device *fsdev; local 324 struct nandfs_device *fsdev; local 529 nandfs_update_phys_block(struct nandfs_device *fsdev, struct buf *bp, uint64_t phys_blknr, union nandfs_binfo *binfo) argument 578 struct nandfs_device *fsdev; local 647 struct nandfs_device *fsdev; local 699 nandfs_save_buf(struct buf *bp, uint64_t blocknr, struct nandfs_device *fsdev) argument 734 nandfs_clean_buf(struct nandfs_device *fsdev, struct buf *bp) argument 748 struct nandfs_device *fsdev = seg->fsdev; local 793 struct nandfs_device *fsdev = seg->fsdev; local 880 struct nandfs_device *fsdev; local 917 nandfs_invalidate_bufs(struct nandfs_device *fsdev, uint64_t segno) argument 948 nandfs_process_segments(struct nandfs_device *fsdev) argument 979 struct nandfs_device *fsdev; local 1122 struct nandfs_device *fsdev; local [all...] |
H A D | nandfs_cleaner.c | 61 nandfs_wakeup_wait_cleaner(struct nandfs_device *fsdev, int reason) argument 64 mtx_lock(&fsdev->nd_clean_mtx); 66 fsdev->nd_cleaner_exit = 1; 67 if (fsdev->nd_cleaning == 0) { 68 fsdev->nd_cleaning = 1; 69 wakeup(&fsdev->nd_cleaning); 71 cv_wait(&fsdev->nd_clean_cv, &fsdev->nd_clean_mtx); 72 mtx_unlock(&fsdev->nd_clean_mtx); 76 nandfs_start_cleaner(struct nandfs_device *fsdev) argument 93 nandfs_stop_cleaner(struct nandfs_device *fsdev) argument 105 nandfs_cleaner_finished(struct nandfs_device *fsdev) argument 146 nandfs_cleaner_vblock_is_alive(struct nandfs_device *fsdev, struct nandfs_vinfo *vinfo, struct nandfs_cpinfo *cp, uint32_t ncps) argument 177 nandfs_cleaner_vinfo_mark_alive(struct nandfs_device *fsdev, struct nandfs_vinfo *vinfo, uint32_t nmembs, struct nandfs_cpinfo *cp, uint32_t ncps) argument 189 nandfs_cleaner_bdesc_is_alive(struct nandfs_device *fsdev, struct nandfs_bdesc *bdesc) argument 202 nandfs_cleaner_bdesc_mark_alive(struct nandfs_device *fsdev, struct nandfs_bdesc *bdesc, uint32_t nmembs) argument 213 nandfs_cleaner_iterate_psegment(struct nandfs_device *fsdev, struct nandfs_segment_summary *segsum, union nandfs_binfo *binfo, nandfs_daddr_t blk, struct nandfs_vinfo **vipp, struct nandfs_bdesc **bdpp) argument 241 nandfs_cleaner_iterate_segment(struct nandfs_device *fsdev, uint64_t segno, struct nandfs_vinfo **vipp, struct nandfs_bdesc **bdpp, int *select) argument 293 nandfs_cleaner_choose_segment(struct nandfs_device *fsdev, uint64_t **segpp, uint64_t nsegs, uint64_t *rseg) argument 335 nandfs_cleaner_body(struct nandfs_device *fsdev, uint64_t *rseg) argument 462 nandfs_cleaner(struct nandfs_device *fsdev) argument [all...] |
H A D | nandfs_sufile.c | 62 nandfs_seg_usage_blk_offset(struct nandfs_device *fsdev, uint64_t seg, argument 68 seg_size = fsdev->nd_fsdata.f_segment_usage_size; 73 *blk = off / fsdev->nd_blocksize; 74 *offset = off % fsdev->nd_blocksize; 80 nandfs_alloc_segment(struct nandfs_device *fsdev, uint64_t *seg) argument 90 seg_size = fsdev->nd_fsdata.f_segment_usage_size; 91 nsegments = fsdev->nd_fsdata.f_nsegments; 93 su_node = fsdev->nd_su_node; 111 nandfs_seg_usage_blk_offset(fsdev, i, &blk, &offset); 139 rest = (fsdev 216 nandfs_touch_segment(struct nandfs_device *fsdev, uint64_t seg) argument 242 nandfs_update_segment(struct nandfs_device *fsdev, uint64_t seg, uint32_t nblks) argument 278 nandfs_free_segment(struct nandfs_device *fsdev, uint64_t seg) argument 341 nandfs_bad_segment(struct nandfs_device *fsdev, uint64_t seg) argument 372 nandfs_markgc_segment(struct nandfs_device *fsdev, uint64_t seg) argument 406 nandfs_clear_segment(struct nandfs_device *fsdev, uint64_t seg) argument 471 nandfs_get_segment_info_ioctl(struct nandfs_device *fsdev, struct nandfs_argv *nargv) argument 495 nandfs_get_segment_info(struct nandfs_device *fsdev, struct nandfs_suinfo *nsi, uint32_t nmembs, uint64_t segment) argument 504 nandfs_get_segment_info_filter(struct nandfs_device *fsdev, struct nandfs_suinfo *nsi, uint32_t nmembs, uint64_t segment, uint64_t *nsegs, uint32_t filter, uint32_t nfilter) argument [all...] |
H A D | nandfs.h | 118 struct nandfs_device *fsdev; member in struct:nandfs_segment 139 struct nandfs_device *fsdev; member in struct:nandfs_seginfo 239 nandfs_writelockflags(struct nandfs_device *fsdev, int flags) argument 243 if (lockstatus(&fsdev->nd_seg_const) != LK_EXCLUSIVE) 244 error = lockmgr(&fsdev->nd_seg_const, flags | LK_SHARED, NULL); 250 nandfs_writeunlock(struct nandfs_device *fsdev) argument 253 if (lockstatus(&fsdev->nd_seg_const) != LK_EXCLUSIVE) 254 lockmgr(&(fsdev)->nd_seg_const, LK_RELEASE, NULL); 257 #define NANDFS_WRITELOCKFLAGS(fsdev, flags) nandfs_writelockflags(fsdev, flag [all...] |
H A D | nandfs_bmap.c | 68 nandfs_get_maxfilesize(struct nandfs_device *fsdev) argument 71 return (get_maxfilesize(fsdev)); 99 struct nandfs_device *fsdev; local 103 fsdev = node->nn_nandfsdev; 107 error = nandfs_vblock_alloc(fsdev, &vblk); 117 nandfs_vblock_free(fsdev, vblk); 182 struct nandfs_device *fsdev; local 194 fsdev = node->nn_nandfsdev; 197 error = nandfs_vblock_alloc(fsdev, &vblk); 206 nandfs_vblock_end(fsdev, oldbl [all...] |
H A D | nandfs_cpfile.c | 57 nandfs_checkpoint_size(struct nandfs_device *fsdev) argument 60 return (fsdev->nd_fsdata.f_checkpoint_size); 64 nandfs_checkpoint_blk_offset(struct nandfs_device *fsdev, uint64_t cn, argument 72 cp_size = fsdev->nd_fsdata.f_checkpoint_size; 73 cp_per_blk = fsdev->nd_blocksize / cp_size; 84 nandfs_checkpoint_blk_remaining(struct nandfs_device *fsdev, uint64_t cn, argument 89 cp_size = fsdev->nd_fsdata.f_checkpoint_size; 90 cp_remaining = (fsdev->nd_blocksize - offset) / cp_size; 96 nandfs_get_checkpoint(struct nandfs_device *fsdev, struct nandfs_node *cp_node, argument 103 if (cn != fsdev 141 nandfs_set_checkpoint(struct nandfs_device *fsdev, struct nandfs_node *cp_node, uint64_t cn, struct nandfs_inode *ifile_inode, uint64_t nblocks) argument 216 struct nandfs_device *fsdev; local 341 struct nandfs_device *fsdev; local 445 struct nandfs_device *fsdev; local 491 struct nandfs_device *fsdev; local 564 struct nandfs_device *fsdev; local 689 struct nandfs_device *fsdev; local 728 nandfs_make_snap(struct nandfs_device *fsdev, uint64_t *cno) argument 740 nandfs_delete_snap(struct nandfs_device *fsdev, uint64_t cno) argument 753 struct nandfs_device *fsdev; local [all...] |
H A D | bmap.c | 278 lbn_offset(struct nandfs_device *fsdev, int level) argument 283 res *= MNINDIR(fsdev); 288 blocks_inside(struct nandfs_device *fsdev, int level, struct nandfs_indir *nip) argument 293 MPASS(nip->in_off >= 0 && nip->in_off < MNINDIR(fsdev)); 294 blocks += nip->in_off * lbn_offset(fsdev, level); 307 struct nandfs_device *fsdev; local 313 fsdev = node->nn_nandfsdev; 315 MPASS(ap->in_off >= 0 && ap->in_off < MNINDIR(fsdev)); 317 factor = lbn_offset(fsdev, level); 327 bcopy(bp->b_data, copy, fsdev 409 struct nandfs_device *fsdev; local 511 get_maxfilesize(struct nandfs_device *fsdev) argument 546 struct nandfs_device *fsdev; local [all...] |
H A D | nandfs_vfsops.c | 269 nandfs_sblocks_in_esize(struct nandfs_device *fsdev) argument 272 return ((fsdev->nd_erasesize - NANDFS_SBLOCK_OFFSET_BYTES) / 277 nandfs_max_sblocks(struct nandfs_device *fsdev) argument 280 return (NANDFS_NFSAREAS * nandfs_sblocks_in_esize(fsdev)); 284 nandfs_sblocks_in_block(struct nandfs_device *fsdev) argument 287 return (fsdev->nd_devblocksize / sizeof(struct nandfs_super_block)); 292 nandfs_sblocks_in_first_block(struct nandfs_device *fsdev) 296 n = nandfs_sblocks_in_block(fsdev) - 306 nandfs_write_superblock_at(struct nandfs_device *fsdev, argument 316 __func__, fstp->last_used, nandfs_sblocks_in_esize(fsdev))); 408 nandfs_write_superblock(struct nandfs_device *fsdev) argument 455 nandfs_select_fsdata(struct nandfs_device *fsdev, struct nandfs_fsdata *fsdatat, struct nandfs_fsdata **fsdata, int nfsds) argument 474 nandfs_select_sb(struct nandfs_device *fsdev, struct nandfs_super_block *supert, struct nandfs_super_block **super, int nsbs) argument 496 nandfs_read_structures_at(struct nandfs_device *fsdev, struct nandfs_fsarea *fstp, struct nandfs_fsdata *fsdata, struct nandfs_super_block *super) argument 560 nandfs_read_structures(struct nandfs_device *fsdev) argument [all...] |
H A D | nandfs_subr.c | 314 struct nandfs_device *fsdev; local 324 fsdev = node->nn_nandfsdev; 332 memset((*bpp)->b_data, 0, fsdev->nd_blocksize); 340 error = nandfs_vblock_alloc(fsdev, &vblk); 347 vblk = fsdev->nd_fakevblk++; 483 nandfs_load_segsum(struct nandfs_device *fsdev, nandfs_daddr_t blocknr, argument 492 error = nandfs_dev_bread(fsdev, blocknr, NOCRED, 0, &bp); 858 struct nandfs_device *fsdev; local 860 fsdev = nmp->nm_nandfsdev; 862 memcpy(&fsinfo->fs_fsdata, &fsdev 1066 nandfs_erase(struct nandfs_device *fsdev, off_t offset, size_t size) argument 1086 nandfs_block_to_dblock(struct nandfs_device *fsdev, nandfs_lbn_t block) argument [all...] |
H A D | nandfs_fs.h | 40 #define MNINDIR(fsdev) ((fsdev)->nd_blocksize / sizeof(nandfs_daddr_t))
|
H A D | nandfs_vnops.c | 107 struct nandfs_device *fsdev = nandfs_node->nn_nandfsdev; local 126 NANDFS_WRITEUNLOCK(fsdev); 190 struct nandfs_device *fsdev; local 206 fsdev = node->nn_nandfsdev; 208 if (nandfs_fs_full(fsdev)) 219 blocksize = fsdev->nd_blocksize;
|