LinuxKPI: 802.11: extend linuxkpi_ieee80211_rx()
Extend linuxkpi_ieee80211_rx() by another argument for the ieee80211_rx_list() implementation (even though the argument is currently ignored). Sponsored by: The FreeBSD Foundation MFC after: 3 days
This commit is contained in:
parent
e80699a809
commit
e30e05d3ab
@ -1001,7 +1001,7 @@ void linuxkpi_ieee80211_iterate_stations_atomic(struct ieee80211_hw *,
|
||||
void linuxkpi_ieee80211_scan_completed(struct ieee80211_hw *,
|
||||
struct cfg80211_scan_info *);
|
||||
void linuxkpi_ieee80211_rx(struct ieee80211_hw *, struct sk_buff *,
|
||||
struct ieee80211_sta *, struct napi_struct *);
|
||||
struct ieee80211_sta *, struct napi_struct *, struct list_head *);
|
||||
uint8_t linuxkpi_ieee80211_get_tid(struct ieee80211_hdr *, bool);
|
||||
struct ieee80211_sta *linuxkpi_ieee80211_find_sta(struct ieee80211_vif *,
|
||||
const u8 *);
|
||||
@ -1468,28 +1468,36 @@ ieee80211_rx_napi(struct ieee80211_hw *hw, struct ieee80211_sta *sta,
|
||||
struct sk_buff *skb, struct napi_struct *napi)
|
||||
{
|
||||
|
||||
linuxkpi_ieee80211_rx(hw, skb, sta, napi);
|
||||
linuxkpi_ieee80211_rx(hw, skb, sta, napi, NULL);
|
||||
}
|
||||
|
||||
static __inline void
|
||||
ieee80211_rx_list(struct ieee80211_hw *hw, struct ieee80211_sta *sta,
|
||||
struct sk_buff *skb, struct list_head *list)
|
||||
{
|
||||
|
||||
linuxkpi_ieee80211_rx(hw, skb, sta, NULL, list);
|
||||
}
|
||||
|
||||
static __inline void
|
||||
ieee80211_rx_ni(struct ieee80211_hw *hw, struct sk_buff *skb)
|
||||
{
|
||||
|
||||
linuxkpi_ieee80211_rx(hw, skb, NULL, NULL);
|
||||
linuxkpi_ieee80211_rx(hw, skb, NULL, NULL, NULL);
|
||||
}
|
||||
|
||||
static __inline void
|
||||
ieee80211_rx_irqsafe(struct ieee80211_hw *hw, struct sk_buff *skb)
|
||||
{
|
||||
|
||||
linuxkpi_ieee80211_rx(hw, skb, NULL, NULL);
|
||||
linuxkpi_ieee80211_rx(hw, skb, NULL, NULL, NULL);
|
||||
}
|
||||
|
||||
static __inline void
|
||||
ieee80211_rx(struct ieee80211_hw *hw, struct sk_buff *skb)
|
||||
{
|
||||
|
||||
linuxkpi_ieee80211_rx(hw, skb, NULL, NULL);
|
||||
linuxkpi_ieee80211_rx(hw, skb, NULL, NULL, NULL);
|
||||
}
|
||||
|
||||
/* -------------------------------------------------------------------------- */
|
||||
@ -2347,13 +2355,6 @@ ieee80211_get_tx_rates(struct ieee80211_vif *vif, struct ieee80211_sta *sta,
|
||||
TODO();
|
||||
}
|
||||
|
||||
static __inline void
|
||||
ieee80211_rx_list(struct ieee80211_hw *hw, struct ieee80211_sta *sta,
|
||||
struct sk_buff *skb, struct list_head *list)
|
||||
{
|
||||
TODO();
|
||||
}
|
||||
|
||||
static __inline void
|
||||
ieee80211_tx_status_ext(struct ieee80211_hw *hw,
|
||||
struct ieee80211_tx_status *txstat)
|
||||
|
@ -3840,9 +3840,11 @@ linuxkpi_ieee80211_scan_completed(struct ieee80211_hw *hw,
|
||||
return;
|
||||
}
|
||||
|
||||
/* For %list see comment towards the end of the function. */
|
||||
void
|
||||
linuxkpi_ieee80211_rx(struct ieee80211_hw *hw, struct sk_buff *skb,
|
||||
struct ieee80211_sta *sta, struct napi_struct *napi __unused)
|
||||
struct ieee80211_sta *sta, struct napi_struct *napi __unused,
|
||||
struct list_head *list __unused)
|
||||
{
|
||||
struct epoch_tracker et;
|
||||
struct lkpi_hw *lhw;
|
||||
@ -4050,6 +4052,17 @@ linuxkpi_ieee80211_rx(struct ieee80211_hw *hw, struct sk_buff *skb,
|
||||
if (ieee80211_hw_check(hw, RX_INCLUDES_FCS))
|
||||
m_adj(m, -IEEE80211_CRC_LEN);
|
||||
|
||||
#if 0
|
||||
if (list != NULL) {
|
||||
/*
|
||||
* Normally this would be queued up and delivered by
|
||||
* netif_receive_skb_list(), napi_gro_receive(), or the like.
|
||||
* See mt76::mac80211.c as only current possible consumer.
|
||||
*/
|
||||
IMPROVE("we simply pass the packet to net80211 to deal with.");
|
||||
}
|
||||
#endif
|
||||
|
||||
NET_EPOCH_ENTER(et);
|
||||
if (ni != NULL) {
|
||||
ok = ieee80211_input_mimo(ni, m);
|
||||
|
Loading…
Reference in New Issue
Block a user