diff options
-rw-r--r-- | net/ipv4/devinet.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/net/ipv4/devinet.c b/net/ipv4/devinet.c index 7874303220c5..137d1892395d 100644 --- a/net/ipv4/devinet.c +++ b/net/ipv4/devinet.c | |||
@@ -428,8 +428,9 @@ no_promotions: | |||
428 | if (prev_prom) { | 428 | if (prev_prom) { |
429 | struct in_ifaddr *last_sec; | 429 | struct in_ifaddr *last_sec; |
430 | 430 | ||
431 | last_sec = rtnl_dereference(last_prim->ifa_next); | ||
432 | rcu_assign_pointer(prev_prom->ifa_next, next_sec); | 431 | rcu_assign_pointer(prev_prom->ifa_next, next_sec); |
432 | |||
433 | last_sec = rtnl_dereference(last_prim->ifa_next); | ||
433 | rcu_assign_pointer(promote->ifa_next, last_sec); | 434 | rcu_assign_pointer(promote->ifa_next, last_sec); |
434 | rcu_assign_pointer(last_prim->ifa_next, promote); | 435 | rcu_assign_pointer(last_prim->ifa_next, promote); |
435 | } | 436 | } |