Symbol: allowedips_node
drivers/net/wireguard/allowedips.c
106
static struct allowedips_node *find_node(struct allowedips_node *trie, u8 bits,
drivers/net/wireguard/allowedips.c
109
struct allowedips_node *node = trie, *found = NULL;
drivers/net/wireguard/allowedips.c
122
static struct wg_peer *lookup(struct allowedips_node __rcu *root, u8 bits,
drivers/net/wireguard/allowedips.c
127
struct allowedips_node *node;
drivers/net/wireguard/allowedips.c
144
static bool node_placement(struct allowedips_node __rcu *trie, const u8 *key,
drivers/net/wireguard/allowedips.c
145
u8 cidr, u8 bits, struct allowedips_node **rnode,
drivers/net/wireguard/allowedips.c
148
struct allowedips_node *node = rcu_dereference_protected(trie, lockdep_is_held(lock));
drivers/net/wireguard/allowedips.c
149
struct allowedips_node *parent = NULL;
drivers/net/wireguard/allowedips.c
164
static inline void connect_node(struct allowedips_node __rcu **parent, u8 bit, struct allowedips_node *node)
drivers/net/wireguard/allowedips.c
170
static inline void choose_and_connect_node(struct allowedips_node *parent, struct allowedips_node *node)
drivers/net/wireguard/allowedips.c
176
static int add(struct allowedips_node __rcu **trie, u8 bits, const u8 *key,
drivers/net/wireguard/allowedips.c
179
struct allowedips_node *node, *parent, *down, *newnode;
drivers/net/wireguard/allowedips.c
23
static void copy_and_assign_cidr(struct allowedips_node *node, const u8 *src,
drivers/net/wireguard/allowedips.c
247
static void remove_node(struct allowedips_node *node, struct mutex *lock)
drivers/net/wireguard/allowedips.c
249
struct allowedips_node *child, **parent_bit, *parent;
drivers/net/wireguard/allowedips.c
260
parent_bit = (struct allowedips_node **)(node->parent_bit_packed & ~3UL);
drivers/net/wireguard/allowedips.c
263
offsetof(struct allowedips_node, bit[node->parent_bit_packed & 1]);
drivers/net/wireguard/allowedips.c
274
*(struct allowedips_node **)(parent->parent_bit_packed & ~3UL) = child;
drivers/net/wireguard/allowedips.c
278
static int remove(struct allowedips_node __rcu **trie, u8 bits, const u8 *key,
drivers/net/wireguard/allowedips.c
281
struct allowedips_node *node;
drivers/net/wireguard/allowedips.c
301
struct allowedips_node __rcu *old4 = table->root4, *old6 = table->root6;
drivers/net/wireguard/allowedips.c
307
struct allowedips_node *node = rcu_dereference_protected(old4,
drivers/net/wireguard/allowedips.c
314
struct allowedips_node *node = rcu_dereference_protected(old6,
drivers/net/wireguard/allowedips.c
36
static inline u8 choose(struct allowedips_node *node, const u8 *key)
drivers/net/wireguard/allowedips.c
369
struct allowedips_node *node, *tmp;
drivers/net/wireguard/allowedips.c
378
int wg_allowedips_read_node(struct allowedips_node *node, u8 ip[16], u8 *cidr)
drivers/net/wireguard/allowedips.c
41
static void push_rcu(struct allowedips_node **stack,
drivers/net/wireguard/allowedips.c
414
node_cache = KMEM_CACHE(allowedips_node, 0);
drivers/net/wireguard/allowedips.c
42
struct allowedips_node __rcu *p, unsigned int *len)
drivers/net/wireguard/allowedips.c
53
struct allowedips_node *node, *stack[MAX_ALLOWEDIPS_DEPTH] = {
drivers/net/wireguard/allowedips.c
54
container_of(rcu, struct allowedips_node, rcu) };
drivers/net/wireguard/allowedips.c
64
static void root_remove_peer_lists(struct allowedips_node *root)
drivers/net/wireguard/allowedips.c
66
struct allowedips_node *node, *stack[MAX_ALLOWEDIPS_DEPTH] = { root };
drivers/net/wireguard/allowedips.c
82
static u8 common_bits(const struct allowedips_node *node, const u8 *key,
drivers/net/wireguard/allowedips.c
94
static bool prefix_matches(const struct allowedips_node *node, const u8 *key,
drivers/net/wireguard/allowedips.h
17
struct allowedips_node __rcu *bit[2];
drivers/net/wireguard/allowedips.h
30
struct allowedips_node __rcu *root4;
drivers/net/wireguard/allowedips.h
31
struct allowedips_node __rcu *root6;
drivers/net/wireguard/allowedips.h
48
int wg_allowedips_read_node(struct allowedips_node *node, u8 ip[16], u8 *cidr);
drivers/net/wireguard/netlink.c
131
allowedips_node =
drivers/net/wireguard/netlink.c
133
struct allowedips_node, peer_list);
drivers/net/wireguard/netlink.c
135
if (!allowedips_node)
drivers/net/wireguard/netlink.c
146
list_for_each_entry_from(allowedips_node, &peer->allowedips_list,
drivers/net/wireguard/netlink.c
151
family = wg_allowedips_read_node(allowedips_node, ip, &cidr);
drivers/net/wireguard/netlink.c
155
ctx->next_allowedip = allowedips_node;
drivers/net/wireguard/netlink.c
71
struct allowedips_node *next_allowedip;
drivers/net/wireguard/netlink.c
81
struct allowedips_node *allowedips_node = ctx->next_allowedip;
drivers/net/wireguard/netlink.c
94
if (!allowedips_node) {
drivers/net/wireguard/selftest/allowedips.c
22
static __init void print_node(struct allowedips_node *node, u8 bits)
drivers/net/wireguard/selftest/allowedips.c
499
struct allowedips_node *iter_node;
drivers/net/wireguard/selftest/allowedips.c
64
static __init void print_tree(struct allowedips_node __rcu *top, u8 bits)