History

bpf: Remove unnecessary kfree(im_node) in lpm_trie_update_elem

There is no need to call kfree(im_node) when updating element fails, because im_node must be NULL. Remove the unnecessary kfree() for im_node.

Hou Tao committed 1 year ago

Commit 3d5611b1 parent 156c9771 file · +1 −3Browse files

Unified · Split

kernel/bpf/lpm_trie.c+1−3
@@ -315,7 +315,7 @@ static long trie_update_elem(struct bpf_map *map, · 314 unmodified lines
315315 void *_key, void *value, u64 flags)
316316 {
317317 struct lpm_trie *trie = container_of(map, struct lpm_trie, map);
318− struct lpm_trie_node *node, *im_node = NULL, *new_node = NULL;
318+ struct lpm_trie_node *node, *im_node, *new_node = NULL;
319319 struct lpm_trie_node *free_node = NULL;
320320 struct lpm_trie_node __rcu **slot;
321321 struct bpf_lpm_trie_key_u8 *key = _key;
@@ -431,9 +431,7 @@ out: · 109 unmodified lines
431431 if (ret) {
432432 if (new_node)
433433 trie->n_entries--;
434−
435434 kfree(new_node);
436− kfree(im_node);
437435 }
438436
439437 spin_unlock_irqrestore(&trie->lock, irq_flags);