Lines Matching refs:os

80 	zfs_objset_t *os;  in objset_alloc()  local
82 os = ecalloc(1, sizeof(*os)); in objset_alloc()
83 os->osblksz = sizeof(objset_phys_t); in objset_alloc()
84 os->osloc = objset_space_alloc(zfs, os, &os->osblksz); in objset_alloc()
90 STAILQ_INIT(&os->dnodechunks); in objset_alloc()
93 STAILQ_INSERT_HEAD(&os->dnodechunks, chunk, next); in objset_alloc()
94 os->dnodecount = 1; in objset_alloc()
96 os->phys = ecalloc(1, os->osblksz); in objset_alloc()
97 os->phys->os_type = type; in objset_alloc()
99 dnode_init(&os->phys->os_meta_dnode, DMU_OT_DNODE, DMU_OT_NONE, 0); in objset_alloc()
100 os->phys->os_meta_dnode.dn_datablkszsec = in objset_alloc()
103 return (os); in objset_alloc()
110 _objset_write(zfs_opt_t *zfs, zfs_objset_t *os, struct dnode_cursor *c, in _objset_write() argument
121 STAILQ_FOREACH_SAFE(chunk, &os->dnodechunks, next, tmp) { in _objset_write()
125 assert(chunk->nextfree <= os->dnodecount); in _objset_write()
138 vdev_pwrite_dnode_indir(zfs, &os->phys->os_meta_dnode, in _objset_write()
147 STAILQ_INIT(&os->dnodechunks); in _objset_write()
154 os->dnodecount - 1, os->phys, os->osblksz, os->osloc, &os->osbp); in _objset_write()
158 objset_write(zfs_opt_t *zfs, zfs_objset_t *os) in objset_write() argument
172 dnodecount = os->dnodecount; in objset_write()
173 if (os == zfs->mos) in objset_write()
176 c = dnode_cursor_init(zfs, os, &os->phys->os_meta_dnode, dnodesz, in objset_write()
179 dnodeloc = objset_space_alloc(zfs, os, &dnodesz); in objset_write()
181 if (os == zfs->mos) { in objset_write()
188 dsl_dir_root_finalize(zfs, os->space); in objset_write()
190 _objset_write(zfs, os, c, dnodeloc); in objset_write()
194 objset_dnode_bonus_alloc(zfs_objset_t *os, uint8_t type, uint8_t bonustype, in objset_dnode_bonus_alloc() argument
201 assert(!STAILQ_EMPTY(&os->dnodechunks)); in objset_dnode_bonus_alloc()
203 chunk = STAILQ_LAST(&os->dnodechunks, objset_dnode_chunk, next); in objset_dnode_bonus_alloc()
206 STAILQ_INSERT_TAIL(&os->dnodechunks, chunk, next); in objset_dnode_bonus_alloc()
208 *idp = os->dnodecount++; in objset_dnode_bonus_alloc()
211 dnode->dn_datablkszsec = os->osblksz >> MINBLOCKSHIFT; in objset_dnode_bonus_alloc()
216 objset_dnode_alloc(zfs_objset_t *os, uint8_t type, uint64_t *idp) in objset_dnode_alloc() argument
218 return (objset_dnode_bonus_alloc(os, type, DMU_OT_NONE, 0, idp)); in objset_dnode_alloc()
226 objset_dnode_lookup(zfs_objset_t *os, uint64_t id) in objset_dnode_lookup() argument
231 assert(id < os->dnodecount); in objset_dnode_lookup()
233 STAILQ_FOREACH(chunk, &os->dnodechunks, next) { in objset_dnode_lookup()
243 objset_space_alloc(zfs_opt_t *zfs, zfs_objset_t *os, off_t *lenp) in objset_space_alloc() argument
248 os->space += *lenp; in objset_space_alloc()
253 objset_space(const zfs_objset_t *os) in objset_space() argument
255 return (os->space); in objset_space()
259 objset_root_blkptr_copy(const zfs_objset_t *os, blkptr_t *bp) in objset_root_blkptr_copy() argument
261 memcpy(bp, &os->osbp, sizeof(blkptr_t)); in objset_root_blkptr_copy()