rb_node
struct rb_node rb;
name##_iter_from(struct rb_node *rb, valtype start, valtype last) \
struct rb_node **iter = &root->rb_root.rb_node; \
struct rb_node *parent = NULL; \
static inline struct rb_node *
rb_next_postorder(const struct rb_node *node)
struct rb_node *parent =
RB_PARENT(__DECONST(struct rb_node *, node), __entry);
for ((x) = rb_entry_safe(__rb_deepest_left((head)->rb_node), \
rb_link_node(struct rb_node *node, struct rb_node *parent,
struct rb_node **rb_link)
rb_replace_node(struct rb_node *victim, struct rb_node *new,
rb_insert_color_cached(struct rb_node *node, struct rb_root_cached *root,
static inline struct rb_node *
rb_erase_cached(struct rb_node *node, struct rb_root_cached *root)
struct rb_node *retval;
rb_replace_node_cached(struct rb_node *old, struct rb_node *new,
static inline struct rb_node *
rb_add_cached(struct rb_node *node, struct rb_root_cached *tree,
bool (*less)(struct rb_node *, const struct rb_node *))
struct rb_node **link = &tree->rb_root.rb_node;
struct rb_node *parent = NULL;
RB_ENTRY(rb_node) __entry;
struct rb_node *rb_node;
struct rb_node *rb_leftmost;
int panic_cmp(struct rb_node *one, struct rb_node *two);
RB_HEAD(linux_root, rb_node);
RB_PROTOTYPE(linux_root, rb_node, __entry, panic_cmp);
#define RB_EMPTY_ROOT(root) ((root)->rb_node == NULL)
static inline struct rb_node *
__rb_deepest_left(struct rb_node *node)
struct rb_node *parent = NULL;
panic_cmp(struct rb_node *one, struct rb_node *two)
RB_GENERATE(linux_root, rb_node, __entry, panic_cmp);
struct rb_node *node = root->rb_node;
struct rb_node **new = &(root->rb_node), *parent = NULL;
struct rb_node *p;
struct rb_node node;
struct rb_node *node = sl_id_map->rb_node;
struct rb_node **link = &sl_id_map->rb_node, *parent = NULL;
struct rb_node *nd;
struct rb_node node;
struct rb_node node;
struct rb_node *p;
struct rb_node *p;
struct rb_node *node = ctx->mcg_table.rb_node;
struct rb_node **link = &ctx->mcg_table.rb_node;
struct rb_node *parent = NULL;
struct rb_node rb_node;
struct rb_node **new = &root->rb_node;
struct rb_node *parent = NULL;
tfp = rb_entry(parent, struct mlx5_fw_page, rb_node);
rb_link_node(&nfp->rb_node, parent, new);
rb_insert_color(&nfp->rb_node, root);
struct rb_node *tmp = root->rb_node;
tfp = rb_entry(tmp, struct mlx5_fw_page, rb_node);
rb_erase(&tfp->rb_node, &dev->priv.page_root);
struct rb_node *p;
fwp = rb_entry(p, struct mlx5_fw_page, rb_node);
struct rb_node *p;
fwp = rb_entry(p, struct mlx5_fw_page, rb_node);
struct rb_node remote_qp_node;
struct rb_node remote_id_node;
struct rb_node service_node;
struct rb_node sidr_id_node;
struct rb_node **link = &cm.listen_service_table.rb_node;
struct rb_node *parent = NULL;
struct rb_node *node = cm.listen_service_table.rb_node;
struct rb_node **link = &cm.remote_id_table.rb_node;
struct rb_node *parent = NULL;
struct rb_node *node = cm.remote_id_table.rb_node;
struct rb_node **link = &cm.remote_qp_table.rb_node;
struct rb_node *parent = NULL;
struct rb_node **link = &cm.remote_sidr_table.rb_node;
struct rb_node *parent = NULL;
struct rb_node node;
struct rb_node *node = port->table.rb_node;
struct rb_node **link = &port->table.rb_node;
struct rb_node *parent = NULL;
struct rb_node *node;
struct rb_node node;
struct rb_node **p = &dev->xrcd_tree.rb_node;
struct rb_node *parent = NULL;
struct rb_node *p = dev->xrcd_tree.rb_node;
struct rb_node rb_node;
struct rb_node rb_node;
rb_erase(&path->rb_node, &priv->path_tree);
rb_erase(&path->rb_node, &priv->path_tree);
rb_erase(&path->rb_node, &priv->path_tree);
struct rb_node *n = priv->path_tree.rb_node;
path = rb_entry(n, struct ipoib_path, rb_node);
struct rb_node **n = &priv->path_tree.rb_node;
struct rb_node *pn = NULL;
tpath = rb_entry(pn, struct ipoib_path, rb_node);
rb_link_node(&path->rb_node, pn, n);
rb_insert_color(&path->rb_node, &priv->path_tree);
struct rb_node *n;
path = rb_entry(n, struct ipoib_path, rb_node);
rb_erase(&path->rb_node, &priv->path_tree);
struct rb_node *n = priv->multicast_tree.rb_node;
mcast = rb_entry(n, struct ipoib_mcast, rb_node);
struct rb_node **n = &priv->multicast_tree.rb_node, *pn = NULL;
tmcast = rb_entry(pn, struct ipoib_mcast, rb_node);
rb_link_node(&mcast->rb_node, pn, n);
rb_insert_color(&mcast->rb_node, &priv->multicast_tree);
rb_erase(&mcast->rb_node, &priv->multicast_tree);
rb_erase(&priv->broadcast->rb_node, &priv->multicast_tree);
rb_replace_node(&mcast->rb_node,
&nmcast->rb_node,
rb_erase(&mcast->rb_node, &priv->multicast_tree);
struct rb_node *n;
mcast = rb_entry(n, struct ipoib_mcast, rb_node);
struct rb_node rb;
struct rb_node rb_node;