brcmsmac: Initialize power in brcms_c_stf_ss_algo_channel_get()
authorFlorian Fainelli <f.fainelli@gmail.com>
Mon, 18 Jul 2016 23:24:37 +0000 (16:24 -0700)
committerBen Hutchings <ben@decadent.org.uk>
Sun, 20 Nov 2016 01:01:27 +0000 (01:01 +0000)
commit f823a2aa8f4674c095a5413b9e3ba12d82df06f2 upstream.

wlc_phy_txpower_get_current() does a logical OR of power->flags, which
presumes that power.flags was initiliazed earlier by the caller,
unfortunately, this is not the case, so make sure we zero out the struct
tx_power before calling into wlc_phy_txpower_get_current().

Reported-by: coverity (CID 146011)
Fixes: 5b435de0d7868 ("net: wireless: add brcm80211 drivers")
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Acked-by: Arend van Spriel <arend.vanspriel@broadcom.com>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
[bwh: Backported to 3.2: adjust filename]
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
drivers/net/wireless/brcm80211/brcmsmac/stf.c

index d8f528e..6fc47ff 100644 (file)
@@ -86,7 +86,7 @@ void
 brcms_c_stf_ss_algo_channel_get(struct brcms_c_info *wlc, u16 *ss_algo_channel,
                            u16 chanspec)
 {
 brcms_c_stf_ss_algo_channel_get(struct brcms_c_info *wlc, u16 *ss_algo_channel,
                            u16 chanspec)
 {
-       struct tx_power power;
+       struct tx_power power = { };
        u8 siso_mcs_id, cdd_mcs_id, stbc_mcs_id;
 
        /* Clear previous settings */
        u8 siso_mcs_id, cdd_mcs_id, stbc_mcs_id;
 
        /* Clear previous settings */