From: Thomas Pedersen Date: Sun, 15 Dec 2013 21:14:16 +0000 (-0800) Subject: mac80211: update adjusting TBTT bit in beacon X-Git-Tag: v3.14-rc1~94^2~334^2^2~60 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=43552be1da3c420931c89727b6115b7fa35368f8;p=pandora-kernel.git mac80211: update adjusting TBTT bit in beacon This regression was introduced in "mac80211: cache mesh beacon". mesh_sync_offset_adjust_tbtt() was assuming that the beacon would be rebuilt in every single pre-tbtt interrupt, but now the beacon update happens on the workqueue, and it must be ready for immediate delivery to the driver. Save a pointer to the meshconf IE in the beacon_data (this works because both the IE pointer and beacon buffer are protected by the same rcu_{dereference,assign_pointer}()) for quick updates during pre-tbtt. This is faster and a little prettier than iterating over the elements to find the meshconf IE every time. Signed-off-by: Thomas Pedersen Signed-off-by: Johannes Berg --- Reading git-diff-tree failed