]> git.baikalelectronics.ru Git - kernel.git/commit
fib_trie: inflate/halve nodes in a more RCU friendly way
authorAlexander Duyck <alexander.h.duyck@redhat.com>
Wed, 31 Dec 2014 18:56:55 +0000 (10:56 -0800)
committerDavid S. Miller <davem@davemloft.net>
Wed, 31 Dec 2014 23:25:55 +0000 (18:25 -0500)
commita9a42f5750f4b05ac478ff8e0a929d098a113b87
tree5ebc06238edf93913bf5e27bd30589163ce1fa31
parentc14f5e13a592a4a808724509e979aa6cb5129a67
fib_trie: inflate/halve nodes in a more RCU friendly way

This change pulls the node_set_parent functionality out of put_child_reorg
and instead leaves that to the function to take care of as well.  By doing
this we can fully construct the new cluster of tnodes and all of the
pointers out of it before we start routing pointers into it.

I am suspecting this will likely fix some concurency issues though I don't
have a good test to show as such.

Signed-off-by: Alexander Duyck <alexander.h.duyck@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/ipv4/fib_trie.c