mac80211: mesh: move path tables into if_mesh
authorBob Copeland <me@bobcopeland.com>
Mon, 29 Feb 2016 01:03:56 +0000 (20:03 -0500)
committerJohannes Berg <johannes.berg@intel.com>
Tue, 5 Apr 2016 08:56:30 +0000 (10:56 +0200)
commit2bdaf386f99c4a82788812e583ff59c6714ae4d6
tree903aff9c23f928cc3c1f5811ac4ff129d0206546
parent12880d169471fb14c46d6f323f31127702a6d5e6
mac80211: mesh: move path tables into if_mesh

The mesh path and mesh gate hashtables are global, containing
all of the mpaths for every mesh interface, but the paths are
all tied logically to a single interface.  The common case is
just a single mesh interface, so optimize for that by moving
the global hashtable into the per-interface struct.

Doing so allows us to drop sdata pointer comparisons inside
the lookups and also saves a few bytes of BSS and data.

Signed-off-by: Bob Copeland <me@bobcopeland.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
net/mac80211/cfg.c
net/mac80211/ieee80211_i.h
net/mac80211/mesh.c
net/mac80211/mesh.h
net/mac80211/mesh_pathtbl.c
net/mac80211/tx.c