Symbol: rbnode
drivers/base/regmap/regcache-rbtree.c
112
base_reg = rbnode->base_reg;
drivers/base/regmap/regcache-rbtree.c
125
rb_link_node(&rbnode->node, parent, new);
drivers/base/regmap/regcache-rbtree.c
126
rb_insert_color(&rbnode->node, root);
drivers/base/regmap/regcache-rbtree.c
247
struct regcache_rbtree_node *rbnode;
drivers/base/regmap/regcache-rbtree.c
250
rbnode = regcache_rbtree_lookup(map, reg);
drivers/base/regmap/regcache-rbtree.c
251
if (rbnode) {
drivers/base/regmap/regcache-rbtree.c
252
reg_tmp = (reg - rbnode->base_reg) / map->reg_stride;
drivers/base/regmap/regcache-rbtree.c
253
if (!test_bit(reg_tmp, rbnode->cache_present))
drivers/base/regmap/regcache-rbtree.c
255
*value = regcache_rbtree_get_register(map, rbnode, reg_tmp);
drivers/base/regmap/regcache-rbtree.c
265
struct regcache_rbtree_node *rbnode,
drivers/base/regmap/regcache-rbtree.c
278
offset = (rbnode->base_reg - base_reg) / map->reg_stride;
drivers/base/regmap/regcache-rbtree.c
280
blk = krealloc_array(rbnode->block, blklen, map->cache_word_size, map->alloc_flags);
drivers/base/regmap/regcache-rbtree.c
284
rbnode->block = blk;
drivers/base/regmap/regcache-rbtree.c
286
if (BITS_TO_LONGS(blklen) > BITS_TO_LONGS(rbnode->blklen)) {
drivers/base/regmap/regcache-rbtree.c
287
present = krealloc_array(rbnode->cache_present,
drivers/base/regmap/regcache-rbtree.c
293
memset(present + BITS_TO_LONGS(rbnode->blklen), 0,
drivers/base/regmap/regcache-rbtree.c
294
(BITS_TO_LONGS(blklen) - BITS_TO_LONGS(rbnode->blklen))
drivers/base/regmap/regcache-rbtree.c
297
present = rbnode->cache_present;
drivers/base/regmap/regcache-rbtree.c
303
blk, rbnode->blklen * map->cache_word_size);
drivers/base/regmap/regcache-rbtree.c
308
rbnode->blklen = blklen;
drivers/base/regmap/regcache-rbtree.c
309
rbnode->base_reg = base_reg;
drivers/base/regmap/regcache-rbtree.c
310
rbnode->cache_present = present;
drivers/base/regmap/regcache-rbtree.c
312
regcache_rbtree_set_register(map, rbnode, pos, value);
drivers/base/regmap/regcache-rbtree.c
319
struct regcache_rbtree_node *rbnode;
drivers/base/regmap/regcache-rbtree.c
323
rbnode = kzalloc_obj(*rbnode, map->alloc_flags);
drivers/base/regmap/regcache-rbtree.c
324
if (!rbnode)
drivers/base/regmap/regcache-rbtree.c
337
rbnode->blklen = (range->range_max - range->range_min) /
drivers/base/regmap/regcache-rbtree.c
339
rbnode->base_reg = range->range_min;
drivers/base/regmap/regcache-rbtree.c
343
if (!rbnode->blklen) {
drivers/base/regmap/regcache-rbtree.c
344
rbnode->blklen = 1;
drivers/base/regmap/regcache-rbtree.c
345
rbnode->base_reg = reg;
drivers/base/regmap/regcache-rbtree.c
348
rbnode->block = kmalloc_array(rbnode->blklen, map->cache_word_size,
drivers/base/regmap/regcache-rbtree.c
350
if (!rbnode->block)
drivers/base/regmap/regcache-rbtree.c
353
rbnode->cache_present = kcalloc(BITS_TO_LONGS(rbnode->blklen),
drivers/base/regmap/regcache-rbtree.c
354
sizeof(*rbnode->cache_present),
drivers/base/regmap/regcache-rbtree.c
356
if (!rbnode->cache_present)
drivers/base/regmap/regcache-rbtree.c
359
return rbnode;
drivers/base/regmap/regcache-rbtree.c
362
kfree(rbnode->block);
drivers/base/regmap/regcache-rbtree.c
364
kfree(rbnode);
drivers/base/regmap/regcache-rbtree.c
372
struct regcache_rbtree_node *rbnode, *rbnode_tmp;
drivers/base/regmap/regcache-rbtree.c
382
rbnode = regcache_rbtree_lookup(map, reg);
drivers/base/regmap/regcache-rbtree.c
383
if (rbnode) {
drivers/base/regmap/regcache-rbtree.c
384
reg_tmp = (reg - rbnode->base_reg) / map->reg_stride;
drivers/base/regmap/regcache-rbtree.c
385
regcache_rbtree_set_register(map, rbnode, reg_tmp, value);
drivers/base/regmap/regcache-rbtree.c
41
struct regcache_rbtree_node *rbnode,
drivers/base/regmap/regcache-rbtree.c
418
rbnode = rbnode_tmp;
drivers/base/regmap/regcache-rbtree.c
438
if (rbnode) {
drivers/base/regmap/regcache-rbtree.c
439
ret = regcache_rbtree_insert_to_block(map, rbnode,
drivers/base/regmap/regcache-rbtree.c
44
*base = rbnode->base_reg;
drivers/base/regmap/regcache-rbtree.c
445
rbtree_ctx->cached_rbnode = rbnode;
drivers/base/regmap/regcache-rbtree.c
45
*top = rbnode->base_reg + ((rbnode->blklen - 1) * map->reg_stride);
drivers/base/regmap/regcache-rbtree.c
452
rbnode = regcache_rbtree_node_alloc(map, reg);
drivers/base/regmap/regcache-rbtree.c
453
if (!rbnode)
drivers/base/regmap/regcache-rbtree.c
455
regcache_rbtree_set_register(map, rbnode,
drivers/base/regmap/regcache-rbtree.c
456
(reg - rbnode->base_reg) / map->reg_stride,
drivers/base/regmap/regcache-rbtree.c
458
regcache_rbtree_insert(map, &rbtree_ctx->root, rbnode);
drivers/base/regmap/regcache-rbtree.c
459
rbtree_ctx->cached_rbnode = rbnode;
drivers/base/regmap/regcache-rbtree.c
470
struct regcache_rbtree_node *rbnode;
drivers/base/regmap/regcache-rbtree.c
479
rbnode = rb_entry(node, struct regcache_rbtree_node, node);
drivers/base/regmap/regcache-rbtree.c
481
regcache_rbtree_get_base_top_reg(map, rbnode, &base_reg,
drivers/base/regmap/regcache-rbtree.c
49
struct regcache_rbtree_node *rbnode, unsigned int idx)
drivers/base/regmap/regcache-rbtree.c
496
end = rbnode->blklen;
drivers/base/regmap/regcache-rbtree.c
498
ret = regcache_sync_block(map, rbnode->block,
drivers/base/regmap/regcache-rbtree.c
499
rbnode->cache_present,
drivers/base/regmap/regcache-rbtree.c
500
rbnode->base_reg, start, end);
drivers/base/regmap/regcache-rbtree.c
51
return regcache_get_val(map, rbnode->block, idx);
drivers/base/regmap/regcache-rbtree.c
514
struct regcache_rbtree_node *rbnode;
drivers/base/regmap/regcache-rbtree.c
521
rbnode = rb_entry(node, struct regcache_rbtree_node, node);
drivers/base/regmap/regcache-rbtree.c
523
regcache_rbtree_get_base_top_reg(map, rbnode, &base_reg,
drivers/base/regmap/regcache-rbtree.c
538
end = rbnode->blklen;
drivers/base/regmap/regcache-rbtree.c
540
bitmap_clear(rbnode->cache_present, start, end - start);
drivers/base/regmap/regcache-rbtree.c
55
struct regcache_rbtree_node *rbnode,
drivers/base/regmap/regcache-rbtree.c
58
set_bit(idx, rbnode->cache_present);
drivers/base/regmap/regcache-rbtree.c
59
regcache_set_val(map, rbnode->block, idx, val);
drivers/base/regmap/regcache-rbtree.c
67
struct regcache_rbtree_node *rbnode;
drivers/base/regmap/regcache-rbtree.c
70
rbnode = rbtree_ctx->cached_rbnode;
drivers/base/regmap/regcache-rbtree.c
71
if (rbnode) {
drivers/base/regmap/regcache-rbtree.c
72
regcache_rbtree_get_base_top_reg(map, rbnode, &base_reg,
drivers/base/regmap/regcache-rbtree.c
75
return rbnode;
drivers/base/regmap/regcache-rbtree.c
80
rbnode = rb_entry(node, struct regcache_rbtree_node, node);
drivers/base/regmap/regcache-rbtree.c
81
regcache_rbtree_get_base_top_reg(map, rbnode, &base_reg,
drivers/base/regmap/regcache-rbtree.c
84
rbtree_ctx->cached_rbnode = rbnode;
drivers/base/regmap/regcache-rbtree.c
85
return rbnode;
drivers/base/regmap/regcache-rbtree.c
97
struct regcache_rbtree_node *rbnode)
drivers/infiniband/hw/hfi1/mmu_rb.c
101
rbnode = rb_entry(node, struct mmu_rb_node, node);
drivers/infiniband/hw/hfi1/mmu_rb.c
104
list_move(&rbnode->list, &del_list);
drivers/infiniband/hw/hfi1/mmu_rb.c
109
rbnode = list_first_entry(&del_list, struct mmu_rb_node, list);
drivers/infiniband/hw/hfi1/mmu_rb.c
110
list_del(&rbnode->list);
drivers/infiniband/hw/hfi1/mmu_rb.c
111
kref_put(&rbnode->refcount, release_immediate);
drivers/infiniband/hw/hfi1/mmu_rb.c
228
struct mmu_rb_node *rbnode, *ptr;
drivers/infiniband/hw/hfi1/mmu_rb.c
239
list_for_each_entry_safe(rbnode, ptr, &handler->lru_list, list) {
drivers/infiniband/hw/hfi1/mmu_rb.c
241
if (kref_read(&rbnode->refcount) > 1)
drivers/infiniband/hw/hfi1/mmu_rb.c
244
if (handler->ops->evict(handler->ops_arg, rbnode, evict_arg,
drivers/infiniband/hw/hfi1/mmu_rb.c
246
__mmu_int_rb_remove(rbnode, &handler->root);
drivers/infiniband/hw/hfi1/mmu_rb.c
248
list_move(&rbnode->list, &del_list);
drivers/infiniband/hw/hfi1/mmu_rb.c
255
list_for_each_entry_safe(rbnode, ptr, &del_list, list) {
drivers/infiniband/hw/hfi1/mmu_rb.c
256
trace_hfi1_mmu_rb_evict(rbnode);
drivers/infiniband/hw/hfi1/mmu_rb.c
257
kref_put(&rbnode->refcount, release_immediate);
drivers/infiniband/hw/hfi1/mmu_rb.c
80
struct mmu_rb_node *rbnode;
fs/btrfs/backref.c
1586
ref = rb_entry(node, struct prelim_ref, rbnode);
fs/btrfs/backref.c
1587
node = rb_next(&ref->rbnode);
fs/btrfs/backref.c
257
rb_entry(new, struct prelim_ref, rbnode);
fs/btrfs/backref.c
259
rb_entry(exist, struct prelim_ref, rbnode);
fs/btrfs/backref.c
299
exist = rb_find_add_cached(&newref->rbnode, root, prelim_ref_rb_add_cmp);
fs/btrfs/backref.c
301
struct prelim_ref *ref = rb_entry(exist, struct prelim_ref, rbnode);
fs/btrfs/backref.c
340
&preftree->root.rb_root, rbnode) {
fs/btrfs/backref.c
454
ref = rb_entry(parent, struct prelim_ref, rbnode);
fs/btrfs/backref.c
755
ref = rb_entry(rnode, struct prelim_ref, rbnode);
fs/btrfs/backref.c
762
rb_erase_cached(&ref->rbnode, &preftrees->indirect.root);
fs/btrfs/backref.c
846
ref = rb_entry(node, struct prelim_ref, rbnode);
fs/btrfs/backref.h
263
struct rb_node rbnode;
include/linux/skbuff.h
4153
#define rb_to_skb(rb) rb_entry_safe(rb, struct sk_buff, rbnode)
include/linux/skbuff.h
4156
#define skb_rb_next(skb) rb_to_skb(rb_next(&(skb)->rbnode))
include/linux/skbuff.h
4157
#define skb_rb_prev(skb) rb_to_skb(rb_prev(&(skb)->rbnode))
include/linux/skbuff.h
902
struct rb_node rbnode; /* used in netem, ip4 defrag, and tcp stack */
include/net/tcp.h
2314
rb_erase(&skb->rbnode, &sk->tcp_rtx_queue);
net/core/skbuff.c
4047
struct sk_buff *skb = rb_entry(p, struct sk_buff, rbnode);
net/core/skbuff.c
4050
rb_erase(&skb->rbnode, root);
net/ipv4/inet_fragment.c
306
struct sk_buff *skb = rb_entry(p, struct sk_buff, rbnode);
net/ipv4/inet_fragment.c
309
rb_erase(&skb->rbnode, root);
net/ipv4/inet_fragment.c
487
rb_link_node(&skb->rbnode, parent, rbn);
net/ipv4/inet_fragment.c
488
rb_insert_color(&skb->rbnode, &q->rb_fragments);
net/ipv4/inet_fragment.c
49
RB_CLEAR_NODE(&skb->rbnode);
net/ipv4/inet_fragment.c
525
if (RB_EMPTY_NODE(&skb->rbnode))
net/ipv4/inet_fragment.c
528
rb_replace_node(&skb->rbnode, &fp->rbnode,
net/ipv4/inet_fragment.c
539
rb_replace_node(&head->rbnode, &skb->rbnode,
net/ipv4/inet_fragment.c
616
rbn = rb_next(&head->rbnode);
net/ipv4/inet_fragment.c
617
rb_erase(&head->rbnode, &q->rb_fragments);
net/ipv4/inet_fragment.c
641
memset(&fp->rbnode, 0, sizeof(fp->rbnode));
net/ipv4/inet_fragment.c
685
rb_replace_node(&head->rbnode, &skb->rbnode,
net/ipv4/inet_fragment.c
688
rb_erase(&head->rbnode, &q->rb_fragments);
net/ipv4/inet_fragment.c
689
memset(&head->rbnode, 0, sizeof(head->rbnode));
net/ipv4/inet_fragment.c
72
rb_link_node(&skb->rbnode, &q->last_run_head->rbnode,
net/ipv4/inet_fragment.c
73
&q->last_run_head->rbnode.rb_right);
net/ipv4/inet_fragment.c
75
rb_link_node(&skb->rbnode, NULL, &q->rb_fragments.rb_node);
net/ipv4/inet_fragment.c
76
rb_insert_color(&skb->rbnode, &q->rb_fragments);
net/ipv4/tcp_input.c
5328
rb_erase(&skb->rbnode, &tp->out_of_order_queue);
net/ipv4/tcp_input.c
5417
rb_link_node(&skb->rbnode, NULL, p);
net/ipv4/tcp_input.c
5418
rb_insert_color(&skb->rbnode, &tp->out_of_order_queue);
net/ipv4/tcp_input.c
5440
parent = &tp->ooo_last_skb->rbnode;
net/ipv4/tcp_input.c
5472
rb_replace_node(&skb1->rbnode, &skb->rbnode,
net/ipv4/tcp_input.c
5491
rb_link_node(&skb->rbnode, parent, p);
net/ipv4/tcp_input.c
5492
rb_insert_color(&skb->rbnode, &tp->out_of_order_queue);
net/ipv4/tcp_input.c
5504
rb_erase(&skb1->rbnode, &tp->out_of_order_queue);
net/ipv4/tcp_input.c
5756
rb_erase(&skb->rbnode, root);
net/ipv4/tcp_input.c
5950
node = &tp->ooo_last_skb->rbnode;
net/ipv4/tcp_output.c
78
rb_link_node(&skb->rbnode, parent, p);
net/ipv4/tcp_output.c
79
rb_insert_color(&skb->rbnode, root);
net/mptcp/protocol.c
269
rb_link_node(&skb->rbnode, NULL, p);
net/mptcp/protocol.c
270
rb_insert_color(&skb->rbnode, &msk->out_of_order_queue);
net/mptcp/protocol.c
287
parent = &msk->ooo_last_skb->rbnode;
net/mptcp/protocol.c
318
rb_replace_node(&skb1->rbnode, &skb->rbnode,
net/mptcp/protocol.c
333
rb_link_node(&skb->rbnode, parent, p);
net/mptcp/protocol.c
334
rb_insert_color(&skb->rbnode, &msk->out_of_order_queue);
net/mptcp/protocol.c
341
rb_erase(&skb1->rbnode, &msk->out_of_order_queue);
net/mptcp/protocol.c
803
rb_erase(&skb->rbnode, &msk->out_of_order_queue);
net/netfilter/nf_conncount.c
413
struct rb_node **rbnode, *parent;
net/netfilter/nf_conncount.c
422
rbnode = &root->root.rb_node;
net/netfilter/nf_conncount.c
423
while (*rbnode) {
net/netfilter/nf_conncount.c
425
rbconn = rb_entry(*rbnode, struct nf_conncount_rb, node);
net/netfilter/nf_conncount.c
427
parent = *rbnode;
net/netfilter/nf_conncount.c
430
rbnode = &((*rbnode)->rb_left);
net/netfilter/nf_conncount.c
432
rbnode = &((*rbnode)->rb_right);
net/netfilter/nf_conncount.c
484
rb_link_node_rcu(&rbconn->node, parent, rbnode);
net/rxrpc/af_rxrpc.c
898
skb = rb_entry(rx->pending_oobq.rb_node, struct sk_buff, rbnode);
net/rxrpc/af_rxrpc.c
899
rb_erase(&skb->rbnode, &rx->pending_oobq);
net/rxrpc/oob.c
107
rb_link_node(&skb->rbnode, p, pp);
net/rxrpc/oob.c
108
rb_insert_color(&skb->rbnode, &rx->pending_oobq);
net/rxrpc/oob.c
187
rb_erase(&skb->rbnode, &rx->pending_oobq);
net/rxrpc/oob.c
79
skb = rb_entry(p, struct sk_buff, rbnode);
net/sched/sch_etf.c
188
rb_link_node(&nskb->rbnode, parent, p);
net/sched/sch_etf.c
189
rb_insert_color_cached(&nskb->rbnode, &q->head, leftmost);
net/sched/sch_etf.c
211
rb_erase_cached(&skb->rbnode, &q->head);
net/sched/sch_etf.c
235
rb_erase_cached(&skb->rbnode, &q->head);
net/sched/sch_etf.c
427
rb_erase_cached(&skb->rbnode, &q->head);
net/sched/sch_fq.c
490
rb_erase(&skb->rbnode, &flow->t_root);
net/sched/sch_fq.c
536
rb_link_node(&skb->rbnode, parent, p);
net/sched/sch_fq.c
537
rb_insert_color(&skb->rbnode, &flow->t_root);
net/sched/sch_fq.c
847
rb_erase(&skb->rbnode, &flow->t_root);
net/sched/sch_netem.c
391
rb_erase(&skb->rbnode, &q->t_root);
net/sched/sch_netem.c
425
rb_link_node(&nskb->rbnode, parent, p);
net/sched/sch_netem.c
426
rb_insert_color(&nskb->rbnode, &q->t_root);
net/sched/sch_netem.c
725
rb_erase(&skb->rbnode, &q->t_root);
tools/testing/selftests/bpf/libarena/include/libarena/rbtree.h
10
struct rbnode __arena *parent;
tools/testing/selftests/bpf/libarena/include/libarena/rbtree.h
13
struct rbnode __arena *left;
tools/testing/selftests/bpf/libarena/include/libarena/rbtree.h
14
struct rbnode __arena *right;
tools/testing/selftests/bpf/libarena/include/libarena/rbtree.h
17
struct rbnode __arena *child[2];
tools/testing/selftests/bpf/libarena/include/libarena/rbtree.h
22
struct rbnode __arena *next;
tools/testing/selftests/bpf/libarena/include/libarena/rbtree.h
59
struct rbnode __arena *root;
tools/testing/selftests/bpf/libarena/include/libarena/rbtree.h
7
struct rbnode;
tools/testing/selftests/bpf/libarena/include/libarena/rbtree.h
75
int rb_insert_node(struct rbtree __arena *rbtree, struct rbnode __arena *node);
tools/testing/selftests/bpf/libarena/include/libarena/rbtree.h
76
int rb_remove_node(struct rbtree __arena *rbtree, struct rbnode __arena *node);
tools/testing/selftests/bpf/libarena/include/libarena/rbtree.h
78
struct rbnode __arena *rb_node_alloc(u64 key, u64 value);
tools/testing/selftests/bpf/libarena/include/libarena/rbtree.h
79
void rb_node_free(struct rbnode __arena *rbnode);
tools/testing/selftests/bpf/libarena/selftests/test_rbtree.bpf.c
11
struct rbnode rbnode;
tools/testing/selftests/bpf/libarena/selftests/test_rbtree.bpf.c
265
nodec = (node_ctx)arena_container_of(rbtree->root, struct node_ctx, rbnode);
tools/testing/selftests/bpf/libarena/selftests/test_rbtree.bpf.c
266
ret = rb_remove_node(rbtree, &nodec->rbnode);
tools/testing/selftests/bpf/libarena/selftests/test_rbtree.bpf.c
298
nodec->rbnode.key = key;
tools/testing/selftests/bpf/libarena/selftests/test_rbtree.bpf.c
299
nodec->rbnode.value = 2 * key;
tools/testing/selftests/bpf/libarena/selftests/test_rbtree.bpf.c
300
ret = rb_insert_node(rbtree, &nodec->rbnode);
tools/testing/selftests/bpf/libarena/selftests/test_rbtree.bpf.c
499
nodec->rbnode.key = key;
tools/testing/selftests/bpf/libarena/selftests/test_rbtree.bpf.c
500
nodec->rbnode.value = 2 * key;
tools/testing/selftests/bpf/libarena/selftests/test_rbtree.bpf.c
510
ret = rb_insert_node(rbtree, &nodec->rbnode);
tools/testing/selftests/bpf/libarena/selftests/test_rbtree.bpf.c
535
if (!nodec || key != nodec->rbnode.key)
tools/testing/selftests/bpf/libarena/selftests/test_rbtree.bpf.c
539
ret = rb_remove_node(rbtree, &nodec->rbnode);
tools/testing/selftests/bpf/libarena/selftests/test_rbtree.bpf.c
867
struct rbnode __arena *node;
tools/testing/selftests/bpf/libarena/selftests/test_rbtree.bpf.c
912
struct rbnode __arena *node;
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
100
struct rbnode __arena *node, int dir)
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
1000
arena_stderr("WARNING: Inconsistent tree, node %p is its own right child\n", rbnode);
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
1004
if (rbnode->is_red) {
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
1005
if (rbnode->left && rbnode->left->is_red) {
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
1006
arena_stderr("WARNING: Inconsistent tree. Parent has %p has red child %p\n", rbnode, rbnode->left);
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
1009
if (rbnode->right && rbnode->right->is_red) {
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
1010
arena_stderr("WARNING: Inconsistent tree. Parent has %p has red child %p\n", rbnode, rbnode->right);
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
1013
} else if (rbnode->parent && rbnode->parent->child[1 - rbnode_dir(rbnode)] == NULL) {
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
1014
arena_stderr("WARNING: Inconsistent tree. Black node %p has no sibling\n", rbnode);
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
1019
state = rb_print_next_state(rbnode, state, &next_addr);
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
102
struct rbnode __arena *tmp, *parent;
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
1020
next = (struct rbnode __arena *)next_addr;
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
1029
rbnode = next;
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
1036
ret = rb_print_pop_up(&rbnode, &depth, &stack, &state);
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
13
void rbnode_print(size_t depth, struct rbnode __arena *rbn);
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
141
struct rbnode __arena *rbnode_find(struct rbnode __arena *subtree, u64 key)
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
143
struct rbnode __arena *node = subtree;
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
15
struct rbnode __arena *existing,
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
16
struct rbnode __arena *replacement);
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
165
struct rbnode __arena *rbnode_least_upper_bound(struct rbnode __arena *subtree, uint64_t key)
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
167
struct rbnode __arena *node = subtree;
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
188
struct rbnode __arena *node;
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
206
struct rbnode __arena *rb_node_alloc(u64 key, u64 value)
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
208
struct rbnode __arena *rbnode = NULL;
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
210
rbnode = (struct rbnode __arena *)arena_malloc(sizeof(*rbnode));
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
211
if (!rbnode)
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
221
rbnode->key = key;
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
222
rbnode->parent = NULL;
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
223
rbnode->value = value;
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
224
rbnode->left = NULL;
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
225
rbnode->is_red = true;
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
226
rbnode->right = NULL;
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
228
return rbnode;
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
232
void rb_node_free(struct rbnode __arena *rbnode)
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
234
arena_free(rbnode);
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
239
struct rbnode __arena *node)
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
241
struct rbnode __arena *grandparent, *parent = rbtree->root;
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
243
struct rbnode __arena *uncle;
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
331
struct rbnode __arena *node)
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
367
struct rbnode __arena *node;
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
389
static inline struct rbnode __arena *rbnode_least(struct rbnode __arena *subtree)
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
399
struct rbnode __arena *least;
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
421
static inline void rbnode_fixup_pointers(struct rbnode __arena *a,
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
422
struct rbnode __arena *b)
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
431
static inline void rbnode_swap_values(struct rbnode __arena *a,
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
432
struct rbnode __arena *b)
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
435
struct rbnode __arena *tmpnode;
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
452
struct rbnode __arena *node, int dir)
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
472
struct rbnode __arena *existing,
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
473
struct rbnode __arena *replacement)
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
500
struct rbnode __arena *a,
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
501
struct rbnode __arena *b)
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
526
struct rbnode __arena *node,
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
529
struct rbnode __arena *child;
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
566
static inline bool rbnode_has_red_children(struct rbnode __arena *node)
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
576
struct rbnode __arena *node)
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
578
struct rbnode __arena *parent, *sibling, *close_nephew, *distant_nephew;
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
580
struct rbnode __arena *replace, *initial;
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
764
struct rbnode __arena *node)
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
778
struct rbnode __arena *node;
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
799
struct rbnode __arena *node;
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
822
inline void rbnode_print(size_t depth, struct rbnode __arena *rbn)
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
835
enum rb_print_state rb_print_next_state(struct rbnode __arena *rbnode,
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
84
static inline int rbnode_dir(struct rbnode __arena *node)
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
843
if (rbnode->left) {
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
844
*next = (u64)rbnode->left;
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
852
if (rbnode->right) {
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
853
*next = (u64)rbnode->right;
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
869
int rb_print_pop_up(struct rbnode __arena **rbnodep, u8 *depthp, enum rb_print_state (*stack)[RB_MAXLVL_PRINT], enum rb_print_state *state)
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
871
struct rbnode __arena *rbnode;
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
878
rbnode = *rbnodep;
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
890
rbnode = rbnode->parent;
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
893
*rbnodep = rbnode;
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
903
struct rbnode __arena *rbnode = rbtree->root;
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
905
struct rbnode __arena *next;
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
924
rbnode_print(depth, rbnode);
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
927
state = rb_print_next_state(rbnode, state, &next_addr);
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
928
next = (struct rbnode __arena *)next_addr;
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
937
rbnode = next;
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
944
ret = rb_print_pop_up(&rbnode, &depth, &stack, &state);
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
965
struct rbnode __arena *rbnode = rbtree->root;
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
967
struct rbnode __arena *next;
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
983
if (rbnode->parent && rbnode->parent->left != rbnode
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
984
&& rbnode->parent->right != rbnode) {
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
985
arena_stderr("WARNING: Inconsistent tree. Parent %p has no child %p\n", rbnode->parent, rbnode);
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
989
if (rbnode->parent == rbnode) {
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
990
arena_stderr("WARNING: Inconsistent tree, node %p is its own parent\n", rbnode);
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
994
if (rbnode->left == rbnode) {
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
995
arena_stderr("WARNING: Inconsistent tree, node %p is its own left child\n", rbnode);
tools/testing/selftests/bpf/libarena/src/rbtree.bpf.c
999
if (rbnode->right == rbnode) {