Code Review
/
kvmfornfv.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
review
|
tree
raw
|
inline
| side by side
Upgrade to 4.4.50-rt62
[kvmfornfv.git]
/
kernel
/
net
/
mac80211
/
tx.c
diff --git
a/kernel/net/mac80211/tx.c
b/kernel/net/mac80211/tx.c
index
bdc224d
..
ea5dfef
100644
(file)
--- a/
kernel/net/mac80211/tx.c
+++ b/
kernel/net/mac80211/tx.c
@@
-365,7
+365,7
@@
static void purge_old_ps_buffers(struct ieee80211_local *local)
skb = skb_dequeue(&ps->bc_buf);
if (skb) {
purged++;
skb = skb_dequeue(&ps->bc_buf);
if (skb) {
purged++;
-
dev_kfree_skb(
skb);
+
ieee80211_free_txskb(&local->hw,
skb);
}
total += skb_queue_len(&ps->bc_buf);
}
}
total += skb_queue_len(&ps->bc_buf);
}
@@
-448,7
+448,7
@@
ieee80211_tx_h_multicast_ps_buf(struct ieee80211_tx_data *tx)
if (skb_queue_len(&ps->bc_buf) >= AP_MAX_BC_BUFFER) {
ps_dbg(tx->sdata,
"BC TX buffer full - dropping the oldest frame\n");
if (skb_queue_len(&ps->bc_buf) >= AP_MAX_BC_BUFFER) {
ps_dbg(tx->sdata,
"BC TX buffer full - dropping the oldest frame\n");
-
dev_kfree_skb(
skb_dequeue(&ps->bc_buf));
+
ieee80211_free_txskb(&tx->local->hw,
skb_dequeue(&ps->bc_buf));
} else
tx->local->total_ps_buffered++;
} else
tx->local->total_ps_buffered++;
@@
-2699,7
+2699,7
@@
static bool ieee80211_xmit_fast(struct ieee80211_sub_if_data *sdata,
int extra_head = fast_tx->hdr_len - (ETH_HLEN - 2);
int hw_headroom = sdata->local->hw.extra_tx_headroom;
struct ethhdr eth;
int extra_head = fast_tx->hdr_len - (ETH_HLEN - 2);
int hw_headroom = sdata->local->hw.extra_tx_headroom;
struct ethhdr eth;
- struct ieee80211_tx_info *info
= IEEE80211_SKB_CB(skb)
;
+ struct ieee80211_tx_info *info;
struct ieee80211_hdr *hdr = (void *)fast_tx->hdr;
struct ieee80211_tx_data tx;
ieee80211_tx_result r;
struct ieee80211_hdr *hdr = (void *)fast_tx->hdr;
struct ieee80211_tx_data tx;
ieee80211_tx_result r;
@@
-2761,6
+2761,7
@@
static bool ieee80211_xmit_fast(struct ieee80211_sub_if_data *sdata,
memcpy(skb->data + fast_tx->da_offs, eth.h_dest, ETH_ALEN);
memcpy(skb->data + fast_tx->sa_offs, eth.h_source, ETH_ALEN);
memcpy(skb->data + fast_tx->da_offs, eth.h_dest, ETH_ALEN);
memcpy(skb->data + fast_tx->sa_offs, eth.h_source, ETH_ALEN);
+ info = IEEE80211_SKB_CB(skb);
memset(info, 0, sizeof(*info));
info->band = fast_tx->band;
info->control.vif = &sdata->vif;
memset(info, 0, sizeof(*info));
info->band = fast_tx->band;
info->control.vif = &sdata->vif;
@@
-3781,7
+3782,7
@@
ieee80211_get_buffered_bc(struct ieee80211_hw *hw,
sdata = IEEE80211_DEV_TO_SUB_IF(skb->dev);
if (!ieee80211_tx_prepare(sdata, &tx, NULL, skb))
break;
sdata = IEEE80211_DEV_TO_SUB_IF(skb->dev);
if (!ieee80211_tx_prepare(sdata, &tx, NULL, skb))
break;
-
dev_kfree_skb_any(
skb);
+
ieee80211_free_txskb(hw,
skb);
}
info = IEEE80211_SKB_CB(skb);
}
info = IEEE80211_SKB_CB(skb);