Lines Matching refs:np

36 	ses_node_t *np;  in ses_find_enclosure()  local
38 for (np = sp->ss_root->sn_first_child; np != NULL; in ses_find_enclosure()
39 np = np->sn_next_sibling) { in ses_find_enclosure()
40 ASSERT(np->sn_type == SES_NODE_ENCLOSURE); in ses_find_enclosure()
41 if (np->sn_enc_num == number) in ses_find_enclosure()
42 return ((ses_node_t *)np); in ses_find_enclosure()
59 ses_node_teardown(ses_node_t *np) in ses_node_teardown() argument
63 if (np == NULL) in ses_node_teardown()
66 for (; np != NULL; np = rp) { in ses_node_teardown()
67 ses_node_teardown(np->sn_first_child); in ses_node_teardown()
68 rp = np->sn_next_sibling; in ses_node_teardown()
69 nvlist_free(np->sn_props); in ses_node_teardown()
70 ses_free(np); in ses_node_teardown()
77 ses_node_t *np; in ses_node_alloc() local
79 np = ses_zalloc(sizeof (ses_node_t)); in ses_node_alloc()
80 if (np == NULL) in ses_node_alloc()
82 if (nvlist_alloc(&np->sn_props, NV_UNIQUE_NAME, 0) != 0) in ses_node_alloc()
85 np->sn_snapshot = sp; in ses_node_alloc()
86 np->sn_id = sp->ss_n_nodes++; in ses_node_alloc()
90 sp->ss_root = np; in ses_node_alloc()
92 np->sn_parent = pnp; in ses_node_alloc()
93 np->sn_prev_sibling = pnp->sn_last_child; in ses_node_alloc()
96 pnp->sn_first_child = np; in ses_node_alloc()
98 pnp->sn_last_child->sn_next_sibling = np; in ses_node_alloc()
100 pnp->sn_last_child = np; in ses_node_alloc()
103 return (np); in ses_node_alloc()
106 ses_free(np); in ses_node_alloc()
138 ses_node_t *np, *pnp, *cnp, *root; in ses_build_snap_skel() local
200 if ((np = ses_node_alloc(sp, root)) == NULL) in ses_build_snap_skel()
203 np->sn_type = SES_NODE_ENCLOSURE; in ses_build_snap_skel()
204 np->sn_enc_num = eip->st_hdr.sehi_subenclosure_id; in ses_build_snap_skel()
211 if (enc_parse_ed(eip, np->sn_props) != 0) in ses_build_snap_skel()
268 if ((np = ses_node_alloc(sp, pnp)) == NULL) in ses_build_snap_skel()
271 np->sn_type = SES_NODE_AGGREGATE; in ses_build_snap_skel()
272 np->sn_enc_num = tip->sthi_subenclosure_id; in ses_build_snap_skel()
273 np->sn_parent = pnp; in ses_build_snap_skel()
274 np->sn_rootidx = idx; in ses_build_snap_skel()
276 SES_NV_ADD(uint64, err, np->sn_props, in ses_build_snap_skel()
278 SES_NV_ADD(uint64, err, np->sn_props, in ses_build_snap_skel()
290 if (elem_parse_td(tip, text, np->sn_props) != 0) in ses_build_snap_skel()
299 cnp = ses_node_alloc(sp, np); in ses_build_snap_skel()
305 SES_PROP_ELEMENT_INDEX, np->sn_rootidx + j + 1); in ses_build_snap_skel()
317 np->sn_snapshot->ss_n_elem = idx; in ses_build_snap_skel()
323 ses_fill_tree(ses_node_t *np) in ses_fill_tree() argument
325 if (np == NULL) in ses_fill_tree()
328 for (; np != NULL; np = np->sn_next_sibling) { in ses_fill_tree()
329 if (ses_fill_node(np) != 0) in ses_fill_tree()
331 if (ses_fill_tree(np->sn_first_child) != 0) in ses_fill_tree()
357 ses_node_sibling(ses_node_t *np) in ses_node_sibling() argument
359 return (np->sn_next_sibling); in ses_node_sibling()
363 ses_node_prev_sibling(ses_node_t *np) in ses_node_prev_sibling() argument
365 return (np->sn_prev_sibling); in ses_node_prev_sibling()
369 ses_node_parent(ses_node_t *np) in ses_node_parent() argument
371 return (np->sn_parent); in ses_node_parent()
375 ses_node_child(ses_node_t *np) in ses_node_child() argument
377 return (np->sn_first_child); in ses_node_child()
381 ses_node_type(ses_node_t *np) in ses_node_type() argument
383 return (np->sn_type); in ses_node_type()
387 ses_node_snapshot(ses_node_t *np) in ses_node_snapshot() argument
389 return ((ses_snap_t *)np->sn_snapshot); in ses_node_snapshot()
393 ses_node_target(ses_node_t *np) in ses_node_target() argument
395 return (np->sn_snapshot->ss_target); in ses_node_target()
399 ses_node_props(ses_node_t *np) in ses_node_props() argument
401 return (np->sn_props); in ses_node_props()
410 ses_node_id(ses_node_t *np) in ses_node_id() argument
412 return (((uint64_t)np->sn_snapshot->ss_generation << 32) | in ses_node_id()
413 np->sn_id); in ses_node_id()