| /freebsd-12-stable/sys/fs/nandfs/ |
| D | nandfs_segment.c | 66 nandfs_new_segment(struct nandfs_device *fsdev) in nandfs_new_segment() argument 71 error = nandfs_alloc_segment(fsdev, &new); in nandfs_new_segment() 73 fsdev->nd_seg_num = fsdev->nd_next_seg_num; in nandfs_new_segment() 74 fsdev->nd_next_seg_num = new; in nandfs_new_segment() 77 __func__, (uintmax_t)fsdev->nd_seg_num, (uintmax_t)new, error)); in nandfs_new_segment() 89 struct nandfs_device *fsdev; in create_segment() local 96 fsdev = seginfo->fsdev; in create_segment() 98 blks_per_seg = fsdev->nd_fsdata.f_blocks_per_segment; in create_segment() 99 nblocks = fsdev->nd_last_segsum.ss_nblocks; in create_segment() 102 vfs_timestamp(&fsdev->nd_ts); in create_segment() [all …]
|
| D | nandfs_sufile.c | 62 nandfs_seg_usage_blk_offset(struct nandfs_device *fsdev, uint64_t seg, in nandfs_seg_usage_blk_offset() argument 68 seg_size = fsdev->nd_fsdata.f_segment_usage_size; in nandfs_seg_usage_blk_offset() 73 *blk = off / fsdev->nd_blocksize; in nandfs_seg_usage_blk_offset() 74 *offset = off % fsdev->nd_blocksize; in nandfs_seg_usage_blk_offset() 80 nandfs_alloc_segment(struct nandfs_device *fsdev, uint64_t *seg) in nandfs_alloc_segment() argument 90 seg_size = fsdev->nd_fsdata.f_segment_usage_size; in nandfs_alloc_segment() 91 nsegments = fsdev->nd_fsdata.f_nsegments; in nandfs_alloc_segment() 93 su_node = fsdev->nd_su_node; in nandfs_alloc_segment() 111 nandfs_seg_usage_blk_offset(fsdev, i, &blk, &offset); in nandfs_alloc_segment() 139 rest = (fsdev->nd_blocksize - offset) / seg_size; in nandfs_alloc_segment() [all …]
|
| D | nandfs_cleaner.c | 61 nandfs_wakeup_wait_cleaner(struct nandfs_device *fsdev, int reason) in nandfs_wakeup_wait_cleaner() argument 64 mtx_lock(&fsdev->nd_clean_mtx); in nandfs_wakeup_wait_cleaner() 66 fsdev->nd_cleaner_exit = 1; in nandfs_wakeup_wait_cleaner() 67 if (fsdev->nd_cleaning == 0) { in nandfs_wakeup_wait_cleaner() 68 fsdev->nd_cleaning = 1; in nandfs_wakeup_wait_cleaner() 69 wakeup(&fsdev->nd_cleaning); in nandfs_wakeup_wait_cleaner() 71 cv_wait(&fsdev->nd_clean_cv, &fsdev->nd_clean_mtx); in nandfs_wakeup_wait_cleaner() 72 mtx_unlock(&fsdev->nd_clean_mtx); in nandfs_wakeup_wait_cleaner() 76 nandfs_start_cleaner(struct nandfs_device *fsdev) in nandfs_start_cleaner() argument 80 MPASS(fsdev->nd_cleaner == NULL); in nandfs_start_cleaner() [all …]
|
| D | nandfs_cpfile.c | 57 nandfs_checkpoint_size(struct nandfs_device *fsdev) in nandfs_checkpoint_size() argument 60 return (fsdev->nd_fsdata.f_checkpoint_size); in nandfs_checkpoint_size() 64 nandfs_checkpoint_blk_offset(struct nandfs_device *fsdev, uint64_t cn, in nandfs_checkpoint_blk_offset() argument 72 cp_size = fsdev->nd_fsdata.f_checkpoint_size; in nandfs_checkpoint_blk_offset() 73 cp_per_blk = fsdev->nd_blocksize / cp_size; in nandfs_checkpoint_blk_offset() 84 nandfs_checkpoint_blk_remaining(struct nandfs_device *fsdev, uint64_t cn, in nandfs_checkpoint_blk_remaining() argument 89 cp_size = fsdev->nd_fsdata.f_checkpoint_size; in nandfs_checkpoint_blk_remaining() 90 cp_remaining = (fsdev->nd_blocksize - offset) / cp_size; in nandfs_checkpoint_blk_remaining() 96 nandfs_get_checkpoint(struct nandfs_device *fsdev, struct nandfs_node *cp_node, in nandfs_get_checkpoint() argument 103 if (cn != fsdev->nd_last_cno && cn != (fsdev->nd_last_cno + 1)) { in nandfs_get_checkpoint() [all …]
|
| D | nandfs_buffer.c | 67 nandfs_dirty_bufs_increment(struct nandfs_device *fsdev) in nandfs_dirty_bufs_increment() argument 70 mtx_lock(&fsdev->nd_mutex); in nandfs_dirty_bufs_increment() 71 KASSERT(fsdev->nd_dirty_bufs >= 0, ("negative nd_dirty_bufs")); in nandfs_dirty_bufs_increment() 72 fsdev->nd_dirty_bufs++; in nandfs_dirty_bufs_increment() 73 mtx_unlock(&fsdev->nd_mutex); in nandfs_dirty_bufs_increment() 77 nandfs_dirty_bufs_decrement(struct nandfs_device *fsdev) in nandfs_dirty_bufs_decrement() argument 80 mtx_lock(&fsdev->nd_mutex); in nandfs_dirty_bufs_decrement() 81 KASSERT(fsdev->nd_dirty_bufs > 0, in nandfs_dirty_bufs_decrement() 83 fsdev->nd_dirty_bufs--; in nandfs_dirty_bufs_decrement() 84 mtx_unlock(&fsdev->nd_mutex); in nandfs_dirty_bufs_decrement()
|
| D | bmap.c | 278 lbn_offset(struct nandfs_device *fsdev, int level) in lbn_offset() argument 283 res *= MNINDIR(fsdev); in lbn_offset() 288 blocks_inside(struct nandfs_device *fsdev, int level, struct nandfs_indir *nip) in blocks_inside() argument 293 MPASS(nip->in_off >= 0 && nip->in_off < MNINDIR(fsdev)); in blocks_inside() 294 blocks += nip->in_off * lbn_offset(fsdev, level); in blocks_inside() 307 struct nandfs_device *fsdev; in bmap_truncate_indirect() local 313 fsdev = node->nn_nandfsdev; in bmap_truncate_indirect() 315 MPASS(ap->in_off >= 0 && ap->in_off < MNINDIR(fsdev)); in bmap_truncate_indirect() 317 factor = lbn_offset(fsdev, level); in bmap_truncate_indirect() 327 bcopy(bp->b_data, copy, fsdev->nd_blocksize); in bmap_truncate_indirect() [all …]
|
| D | nandfs.h | 118 struct nandfs_device *fsdev; member 139 struct nandfs_device *fsdev; member 239 nandfs_writelockflags(struct nandfs_device *fsdev, int flags) in nandfs_writelockflags() argument 243 if (lockstatus(&fsdev->nd_seg_const) != LK_EXCLUSIVE) in nandfs_writelockflags() 244 error = lockmgr(&fsdev->nd_seg_const, flags | LK_SHARED, NULL); in nandfs_writelockflags() 250 nandfs_writeunlock(struct nandfs_device *fsdev) in nandfs_writeunlock() argument 253 if (lockstatus(&fsdev->nd_seg_const) != LK_EXCLUSIVE) in nandfs_writeunlock() 254 lockmgr(&(fsdev)->nd_seg_const, LK_RELEASE, NULL); in nandfs_writeunlock() 257 #define NANDFS_WRITELOCKFLAGS(fsdev, flags) nandfs_writelockflags(fsdev, flags) argument 259 #define NANDFS_WRITELOCK(fsdev) NANDFS_WRITELOCKFLAGS(fsdev, 0) argument [all …]
|
| D | nandfs_vfsops.c | 270 nandfs_sblocks_in_esize(struct nandfs_device *fsdev) in nandfs_sblocks_in_esize() argument 273 return ((fsdev->nd_erasesize - NANDFS_SBLOCK_OFFSET_BYTES) / in nandfs_sblocks_in_esize() 278 nandfs_max_sblocks(struct nandfs_device *fsdev) in nandfs_max_sblocks() argument 281 return (NANDFS_NFSAREAS * nandfs_sblocks_in_esize(fsdev)); in nandfs_max_sblocks() 285 nandfs_sblocks_in_block(struct nandfs_device *fsdev) in nandfs_sblocks_in_block() argument 288 return (fsdev->nd_devblocksize / sizeof(struct nandfs_super_block)); in nandfs_sblocks_in_block() 293 nandfs_sblocks_in_first_block(struct nandfs_device *fsdev) 297 n = nandfs_sblocks_in_block(fsdev) - 307 nandfs_write_superblock_at(struct nandfs_device *fsdev, in nandfs_write_superblock_at() argument 317 __func__, fstp->last_used, nandfs_sblocks_in_esize(fsdev))); in nandfs_write_superblock_at() [all …]
|
| D | nandfs_bmap.c | 68 nandfs_get_maxfilesize(struct nandfs_device *fsdev) in nandfs_get_maxfilesize() argument 71 return (get_maxfilesize(fsdev)); in nandfs_get_maxfilesize() 99 struct nandfs_device *fsdev; in nandfs_bmap_insert_block() local 103 fsdev = node->nn_nandfsdev; in nandfs_bmap_insert_block() 107 error = nandfs_vblock_alloc(fsdev, &vblk); in nandfs_bmap_insert_block() 117 nandfs_vblock_free(fsdev, vblk); in nandfs_bmap_insert_block() 182 struct nandfs_device *fsdev; in nandfs_bmap_update_dat() local 194 fsdev = node->nn_nandfsdev; in nandfs_bmap_update_dat() 197 error = nandfs_vblock_alloc(fsdev, &vblk); in nandfs_bmap_update_dat() 206 nandfs_vblock_end(fsdev, oldblk); in nandfs_bmap_update_dat()
|
| D | nandfs_subr.c | 315 struct nandfs_device *fsdev; in nandfs_bcreate_meta() local 325 fsdev = node->nn_nandfsdev; in nandfs_bcreate_meta() 333 memset((*bpp)->b_data, 0, fsdev->nd_blocksize); in nandfs_bcreate_meta() 341 error = nandfs_vblock_alloc(fsdev, &vblk); in nandfs_bcreate_meta() 348 vblk = fsdev->nd_fakevblk++; in nandfs_bcreate_meta() 484 nandfs_load_segsum(struct nandfs_device *fsdev, nandfs_daddr_t blocknr, in nandfs_load_segsum() argument 493 error = nandfs_dev_bread(fsdev, blocknr, NOCRED, 0, &bp); in nandfs_load_segsum() 859 struct nandfs_device *fsdev; in nandfs_get_fsinfo() local 861 fsdev = nmp->nm_nandfsdev; in nandfs_get_fsinfo() 863 memcpy(&fsinfo->fs_fsdata, &fsdev->nd_fsdata, sizeof(fsdev->nd_fsdata)); in nandfs_get_fsinfo() [all …]
|
| D | nandfs_fs.h | 40 #define MNINDIR(fsdev) ((fsdev)->nd_blocksize / sizeof(nandfs_daddr_t)) argument
|
| D | nandfs_vnops.c | 107 struct nandfs_device *fsdev = nandfs_node->nn_nandfsdev; in nandfs_reclaim() local 126 NANDFS_WRITEUNLOCK(fsdev); in nandfs_reclaim() 190 struct nandfs_device *fsdev; in nandfs_write() local 206 fsdev = node->nn_nandfsdev; in nandfs_write() 208 if (nandfs_fs_full(fsdev)) in nandfs_write() 219 blocksize = fsdev->nd_blocksize; in nandfs_write()
|