mac80211: mesh: don't invalidate SN on discovery failure
authorJesse Jones <jjones@cococorp.com>
Fri, 12 Jun 2015 21:13:09 +0000 (14:13 -0700)
committerJohannes Berg <johannes.berg@intel.com>
Fri, 17 Jul 2015 13:38:14 +0000 (15:38 +0200)
commitd82547106ff9dee43e6ee4f4b3d70b5314ae266f
tree8a289f8d7d25eaeedbd3a14624187f3e7079c115
parent703ee73a41a74210dde9050c6669053866b133a0
mac80211: mesh: don't invalidate SN on discovery failure

The 2012 spec mentions that path SNs can be invalid when created (see
section 13.10.8.4 table 13-9) but AFAICT never talks about invalidating
SNs. Which makes sense: if we have figured out the path to a target at a
certain SN then we want to remember that fact. Failing to do so can lead
to routing loops because if we don't have a valid SN then we have no way
of knowing whether an incoming path message leads to or away from the
target.

However currently when discovery fails we zero out mpath->flags which
clears MESH_PATH_SN_VALID. This patch fixes that so that only the
discovery relevant flags are cleared.

Signed-off-by: Alexis Green <agreen@cococorp.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
net/mac80211/mesh_hwmp.c