• Timo Teras's avatar
    neigh: fix state transition INCOMPLETE->FAILED via Netlink request · 5ef12d98
    Timo Teras authored
    The current code errors out the INCOMPLETE neigh entry skb queue only from
    the timer if maximum probes have been attempted and there has been no reply.
    This also causes the transtion to FAILED state.
    
    However, the neigh entry can be also updated via Netlink to inform that the
    address is unavailable.  Currently, neigh_update() just stops the timers and
    leaves the pending skb's unreleased. This results that the clean up code in
    the timer callback is never called, preventing also proper garbage collection.
    
    This fixes neigh_update() to process the pending skb queue immediately if
    INCOMPLETE -> FAILED state transtion occurs due to a Netlink request.
    Signed-off-by: default avatarTimo Teras <timo.teras@iki.fi>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    5ef12d98
neighbour.c 66.8 KB