diff --git a/sys/compat/linuxkpi/common/src/linux_80211.c b/sys/compat/linuxkpi/common/src/linux_80211.c --- a/sys/compat/linuxkpi/common/src/linux_80211.c +++ b/sys/compat/linuxkpi/common/src/linux_80211.c @@ -243,6 +243,33 @@ #endif } +void +lkpi_sta_dump(struct ieee80211_sta *sta, const char *_f, int _l) +{ +#ifdef LINUXKPI_DEBUG_80211 + struct lkpi_sta *lsta; + struct ieee80211_node *ni; + + lsta = STA_TO_LSTA(sta); + ni = lsta->ni; + if (ni != NULL) { + struct ieee80211vap *vap; + struct lkpi_vif *lvif; + + vap = ni->ni_vap; + lvif = VAP_TO_LVIF(vap); + + ic_printf(vap->iv_ic, "%s:%d: lvif %p vap %p iv_bss %p lvif_bss %p " + "lvif_bss->ni %p synched %d\n", _f, l, + lvif, vap, vap->iv_bss, lvif->lvif_bss, + (lvif->lvif_bss != NULL) ? lvif->lvif_bss->ni : NULL, + lvif->lvif_bss_synched); + } + + lkpi_lsta_dump(lsta, ni, _f, l); +#endif +} + static void lkpi_lsta_remove(struct lkpi_sta *lsta, struct lkpi_vif *lvif) { diff --git a/sys/contrib/dev/iwlwifi/mvm/tx.c b/sys/contrib/dev/iwlwifi/mvm/tx.c --- a/sys/contrib/dev/iwlwifi/mvm/tx.c +++ b/sys/contrib/dev/iwlwifi/mvm/tx.c @@ -1109,6 +1109,10 @@ return 0; } +#if defined(__FreeBSD__) +void lkpi_sta_dump(struct ieee80211_sta *, const char *, int); +#endif + /* * Sets the fields in the Tx cmd that are crypto related. * @@ -1203,6 +1207,7 @@ "skb %p { len %u } info %p sta %p (if you see this please " "report to PR 274382)\n", __func__, __LINE__, fc, tid, txq_id, mvm, skb, skb->len, info, sta); + lkpi_sta_dump(sta, __func__, __LINE__); #endif iwl_trans_free_tx_cmd(mvm->trans, dev_cmd); spin_unlock(&mvmsta->lock);