mac80211: Fixed bug in mesh portal paths
authorJavier Cardona <javier@cozybit.com>
Thu, 10 Dec 2009 02:43:00 +0000 (18:43 -0800)
committerGreg Kroah-Hartman <gregkh@suse.de>
Fri, 18 Dec 2009 22:04:21 +0000 (14:04 -0800)
commit 5d618cb81aeea19879975cd1f9a1e707694dfd7c upstream.

Paths to mesh portals were being timed out immediately after each use in
intermediate forwarding nodes.  mppath->exp_time is set to the expiration time
so assigning it to jiffies was marking the path as expired.

Signed-off-by: Javier Cardona <javier@cozybit.com>
Signed-off-by: Andrey Yurovsky <andrey@cozybit.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
net/mac80211/rx.c

index 7170bf4565a8b9570116e5bcc3abc09d3e05e617..4e14754373a45d51827c3fb45ece82fd16665d11 100644 (file)
@@ -1514,7 +1514,6 @@ ieee80211_rx_h_mesh_fwding(struct ieee80211_rx_data *rx)
                        mpp_path_add(mesh_hdr->eaddr2, hdr->addr4, sdata);
                } else {
                        spin_lock_bh(&mppath->state_lock);
-                       mppath->exp_time = jiffies;
                        if (compare_ether_addr(mppath->mpp, hdr->addr4) != 0)
                                memcpy(mppath->mpp, hdr->addr4, ETH_ALEN);
                        spin_unlock_bh(&mppath->state_lock);