ifconfig(8): display management / multicast wlan(4) rates properly

For 11n / 11ac we are still using non-11n rates for management and
multicast traffic by default; check 'MCS rate' bit to determine how
to print them correctly.

PR:		161035
MFC after:	1 week
This commit is contained in:
Andriy Voskoboinyk 2019-02-03 03:02:59 +00:00
parent 2ce6d2b58c
commit 35a5128d50
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=343698

View File

@ -4324,6 +4324,13 @@ list_roam(int s)
}
}
/* XXX TODO: rate-to-string method... */
static const char*
get_mcs_mbs_rate_str(uint8_t rate)
{
return (rate & IEEE80211_RATE_MCS) ? "MCS " : "Mb/s";
}
static void
list_txparams(int s)
{
@ -4340,19 +4347,23 @@ list_txparams(int s)
mode == IEEE80211_MODE_VHT_2GHZ ||
mode == IEEE80211_MODE_VHT_5GHZ) {
if (tp->ucastrate == IEEE80211_FIXED_RATE_NONE)
LINE_CHECK("%-7.7s ucast NONE mgmt %2u MCS "
"mcast %2u MCS maxretry %u",
LINE_CHECK("%-7.7s ucast NONE mgmt %2u %s "
"mcast %2u %s maxretry %u",
modename[mode],
tp->mgmtrate &~ IEEE80211_RATE_MCS,
get_mcs_mbs_rate_str(tp->mgmtrate),
tp->mcastrate &~ IEEE80211_RATE_MCS,
get_mcs_mbs_rate_str(tp->mcastrate),
tp->maxretry);
else
LINE_CHECK("%-7.7s ucast %2u MCS mgmt %2u MCS "
"mcast %2u MCS maxretry %u",
LINE_CHECK("%-7.7s ucast %2u MCS mgmt %2u %s "
"mcast %2u %s maxretry %u",
modename[mode],
tp->ucastrate &~ IEEE80211_RATE_MCS,
tp->mgmtrate &~ IEEE80211_RATE_MCS,
get_mcs_mbs_rate_str(tp->mgmtrate),
tp->mcastrate &~ IEEE80211_RATE_MCS,
get_mcs_mbs_rate_str(tp->mcastrate),
tp->maxretry);
} else {
if (tp->ucastrate == IEEE80211_FIXED_RATE_NONE)