Lines Matching refs:cb

76 zfs_include_snapshots(zfs_handle_t *zhp, callback_data_t *cb)  in zfs_include_snapshots()  argument
80 if ((cb->cb_flags & ZFS_ITER_PROP_LISTSNAPS) == 0) in zfs_include_snapshots()
81 return (cb->cb_types & ZFS_TYPE_SNAPSHOT); in zfs_include_snapshots()
94 callback_data_t *cb = data; in zfs_callback() local
96 boolean_t include_snaps = zfs_include_snapshots(zhp, cb); in zfs_callback()
97 boolean_t include_bmarks = (cb->cb_types & ZFS_TYPE_BOOKMARK); in zfs_callback()
99 if ((zfs_get_type(zhp) & cb->cb_types) || in zfs_callback()
106 if (uu_avl_find(cb->cb_avl, node, cb->cb_sortcol, in zfs_callback()
108 if (cb->cb_proplist) { in zfs_callback()
109 if ((*cb->cb_proplist) && in zfs_callback()
110 !(*cb->cb_proplist)->pl_all) in zfs_callback()
112 cb->cb_props_table); in zfs_callback()
114 if (zfs_expand_proplist(zhp, cb->cb_proplist, in zfs_callback()
115 (cb->cb_flags & ZFS_ITER_RECVD_PROPS), in zfs_callback()
116 (cb->cb_flags & ZFS_ITER_LITERAL_PROPS)) in zfs_callback()
122 uu_avl_insert(cb->cb_avl, node, idx); in zfs_callback()
132 if (cb->cb_flags & ZFS_ITER_RECURSE && in zfs_callback()
133 ((cb->cb_flags & ZFS_ITER_DEPTH_LIMIT) == 0 || in zfs_callback()
134 cb->cb_depth < cb->cb_depth_limit)) { in zfs_callback()
135 cb->cb_depth++; in zfs_callback()
141 (cb->cb_flags & ZFS_ITER_SIMPLE) != 0, zfs_callback, in zfs_callback()
146 cb->cb_depth--; in zfs_callback()
378 callback_data_t cb = {0}; in zfs_for_each() local
389 cb.cb_sortcol = sortcol; in zfs_for_each()
390 cb.cb_flags = flags; in zfs_for_each()
391 cb.cb_proplist = proplist; in zfs_for_each()
392 cb.cb_types = types; in zfs_for_each()
393 cb.cb_depth_limit = limit; in zfs_for_each()
406 if (cb.cb_proplist && *cb.cb_proplist) { in zfs_for_each()
407 zprop_list_t *p = *cb.cb_proplist; in zfs_for_each()
412 cb.cb_props_table[p->pl_prop] = B_TRUE; in zfs_for_each()
420 cb.cb_props_table[sortcol->sc_prop] = B_TRUE; in zfs_for_each()
425 cb.cb_props_table[ZFS_PROP_ZONED] = B_TRUE; in zfs_for_each()
426 cb.cb_props_table[ZFS_PROP_CREATETXG] = B_TRUE; in zfs_for_each()
428 (void) memset(cb.cb_props_table, B_TRUE, in zfs_for_each()
429 sizeof (cb.cb_props_table)); in zfs_for_each()
432 if ((cb.cb_avl = uu_avl_create(avl_pool, NULL, UU_DEFAULT)) == NULL) in zfs_for_each()
439 cb.cb_flags |= ZFS_ITER_RECURSE; in zfs_for_each()
440 ret = zfs_iter_root(g_zfs, zfs_callback, &cb); in zfs_for_each()
466 ret |= zfs_callback(zhp, &cb); in zfs_for_each()
476 for (node = uu_avl_first(cb.cb_avl); node != NULL; in zfs_for_each()
477 node = uu_avl_next(cb.cb_avl, node)) in zfs_for_each()
483 if ((walk = uu_avl_walk_start(cb.cb_avl, UU_WALK_ROBUST)) == NULL) in zfs_for_each()
487 uu_avl_remove(cb.cb_avl, node); in zfs_for_each()
493 uu_avl_destroy(cb.cb_avl); in zfs_for_each()