summary refs log tree commit diff
path: root/drivers/net/mv643xx_eth.c
diff options
context:
space:
mode:
authorJarek Poplawski <jarkao2@gmail.com>2009-06-18 00:28:51 -0700
committerDavid S. Miller <davem@davemloft.net>2009-06-18 00:28:51 -0700
commit7b85576d15bf2574b0a451108f59f9ad4170dd3f (patch)
treea2d8075b9d234b0a937d7dd82b95cb16b953aec7 /drivers/net/mv643xx_eth.c
parentb964758050f856e44f5fe645d03bea8a1b0b66bd (diff)
downloadlinux-7b85576d15bf2574b0a451108f59f9ad4170dd3f.tar.gz
ipv4: Fix fib_trie rebalancing, part 2
My previous patch, which explicitly delays freeing of tnodes by adding
them to the list to flush them after the update is finished, isn't
strict enough. It treats exceptionally tnodes without parent, assuming
they are newly created, so "invisible" for the read side yet.

But the top tnode doesn't have parent as well, so we have to exclude
all exceptions (at least until a better way is found). Additionally we
need to move rcu assignment of this node before flushing, so the
return type of the trie_rebalance() function is changed.

Reported-by: Yan Zheng <zheng.yan@oracle.com>
Signed-off-by: Jarek Poplawski <jarkao2@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/mv643xx_eth.c')
0 files changed, 0 insertions, 0 deletions