Search Linux Wireless

Re: [PATCH] mac80211: Do not use sizeof() on pointer type

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 08/26/2015 10:23 PM, Arend van Spriel wrote:
On 08/26/2015 12:22 PM, Thierry Reding wrote:
From: Thierry Reding <treding@xxxxxxxxxx>

The rate_control_cap_mask() function takes a parameter mcs_mask, which
GCC will take to be u8 * even though it was declared with a fixed size.
This causes the following warning:

    net/mac80211/rate.c: In function 'rate_control_cap_mask':
    net/mac80211/rate.c:719:25: warning: 'sizeof' on array function
parameter 'mcs_mask' will return size of 'u8 * {aka unsigned char *}'
[-Wsizeof-array-argument]
       for (i = 0; i < sizeof(mcs_mask); i++)
                             ^
    net/mac80211/rate.c:684:10: note: declared here
           u8 mcs_mask[IEEE80211_HT_MCS_MASK_LEN],
              ^

This can be easily fixed by using the IEEE80211_HT_MCS_MASK_LEN directly
within the loop condition.

Or use ARRAY_SIZE(mcs_mask).

Better not. Missed the 'function parameter' bit. Sorry for the noise.

Regards,
Arend

Regards,
Arend

Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>
---
  net/mac80211/rate.c | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/net/mac80211/rate.c b/net/mac80211/rate.c
index 9857693b91ec..9ce8883d5f44 100644
--- a/net/mac80211/rate.c
+++ b/net/mac80211/rate.c
@@ -716,7 +716,7 @@ static bool rate_control_cap_mask(struct
ieee80211_sub_if_data *sdata,

          /* Filter out rates that the STA does not support */
          *mask &= sta->supp_rates[sband->band];
-        for (i = 0; i < sizeof(mcs_mask); i++)
+        for (i = 0; i < IEEE80211_HT_MCS_MASK_LEN; i++)
              mcs_mask[i] &= sta->ht_cap.mcs.rx_mask[i];

          sta_vht_cap = sta->vht_cap.vht_mcs.rx_mcs_map;


--
To unsubscribe from this list: send the line "unsubscribe
linux-wireless" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux