Lines Matching refs:new_node
307 struct lpm_trie_node *node, *im_node = NULL, *new_node = NULL; in trie_update_elem() local
330 new_node = lpm_trie_node_alloc(trie, value); in trie_update_elem()
331 if (!new_node) { in trie_update_elem()
338 new_node->prefixlen = key->prefixlen; in trie_update_elem()
339 RCU_INIT_POINTER(new_node->child[0], NULL); in trie_update_elem()
340 RCU_INIT_POINTER(new_node->child[1], NULL); in trie_update_elem()
341 memcpy(new_node->data, key->data, trie->data_size); in trie_update_elem()
367 rcu_assign_pointer(*slot, new_node); in trie_update_elem()
375 new_node->child[0] = node->child[0]; in trie_update_elem()
376 new_node->child[1] = node->child[1]; in trie_update_elem()
381 rcu_assign_pointer(*slot, new_node); in trie_update_elem()
392 rcu_assign_pointer(new_node->child[next_bit], node); in trie_update_elem()
393 rcu_assign_pointer(*slot, new_node); in trie_update_elem()
410 rcu_assign_pointer(im_node->child[1], new_node); in trie_update_elem()
412 rcu_assign_pointer(im_node->child[0], new_node); in trie_update_elem()
421 if (new_node) in trie_update_elem()
424 kfree(new_node); in trie_update_elem()