mac80211: fix rate reporting inside cfg80211_calculate_bitrate_he() [Linux 5.2]

mac80211: fix rate reporting inside cfg80211_calculate_bitrate_he() [Linux 5.2]

This Linux kernel change "mac80211: fix rate reporting inside cfg80211_calculate_bitrate_he()" is included in the Linux 5.2 release. This change is authored by John Crispin <john [at] phrozen.org> on Thu May 23 10:27:24 2019 +0200. The commit for this change in Linux stable tree is 25d16d1 (patch).

mac80211: fix rate reporting inside cfg80211_calculate_bitrate_he()

The reported rate is not scaled down correctly. After applying this patch,
the function will behave just like the v/ht equivalents.

Signed-off-by: Shashidhar Lakkavalli <slakkavalli@datto.com>
Signed-off-by: John Crispin <john@phrozen.org>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>

There are 2 lines of Linux source code added/deleted in this change. Code changes to Linux kernel are as follows.

 net/wireless/util.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/net/wireless/util.c b/net/wireless/util.c
index cf63b63..b9d8ceb 100644
--- a/net/wireless/util.c
+++ b/net/wireless/util.c
@@ -1246,7 +1246,7 @@ static u32 cfg80211_calculate_bitrate_he(struct rate_info *rate)
    if (rate->he_dcm)
        result /= 2;

-   return result;
+   return result / 10000;
 }

 u32 cfg80211_calculate_bitrate(struct rate_info *rate)

Leave a Reply

Your email address will not be published. Required fields are marked *