mac80211_hwsim: Use proper TX power
authorBeni Lev <beni.lev@intel.com>
Tue, 25 Jul 2017 08:25:25 +0000 (11:25 +0300)
committerpopcornmix <popcornmix@gmail.com>
Fri, 6 Oct 2017 12:06:48 +0000 (13:06 +0100)
commit51b744e55281290edfe514b9305f095abd3bf120
treedc1d1ce29871df2fc302989e4a4495a4855be57d
parent4b93fae5842f33628161b39ef5f87c6106066417
mac80211_hwsim: Use proper TX power

commit 9de981f507474f326e42117858dc9a9321331ae5 upstream.

In struct ieee80211_tx_info, control.vif pointer and rate_driver_data[0]
falls on the same place, depending on the union usage.
During the whole TX process, the union is referred to as a control struct,
which holds the vif that is later used in the tx flow, especially in order
to derive the used tx power.
Referring direcly to rate_driver_data[0] and assigning a value to it,
overwrites the vif pointer, hence making all later references irrelevant.
Moreover, rate_driver_data[0] isn't used later in the flow in order to
retrieve the channel that it is pointing to.

Signed-off-by: Beni Lev <beni.lev@intel.com>
Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/net/wireless/mac80211_hwsim.c