rsi: Remove internal header from Tx status skb
Device specific descriptor for each TX packet is prepared on top of skb data address. This descriptor should be pulled out before indicating the TX status to mac80211. Signed-off-by: Prameela Rani Garnepudi <prameela.j04cs@gmail.com> Signed-off-by: Amitkumar Karwar <amit.karwar@redpinesignals.com> Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
This commit is contained in:
parent
79e590d924
commit
5059afacee
@ -229,12 +229,20 @@ void rsi_indicate_tx_status(struct rsi_hw *adapter,
|
||||
int status)
|
||||
{
|
||||
struct ieee80211_tx_info *info = IEEE80211_SKB_CB(skb);
|
||||
struct skb_info *tx_params;
|
||||
|
||||
memset(info->driver_data, 0, IEEE80211_TX_INFO_DRIVER_DATA_SIZE);
|
||||
if (!adapter->hw) {
|
||||
rsi_dbg(ERR_ZONE, "##### No MAC #####\n");
|
||||
return;
|
||||
}
|
||||
|
||||
if (!status)
|
||||
info->flags |= IEEE80211_TX_STAT_ACK;
|
||||
|
||||
tx_params = (struct skb_info *)info->driver_data;
|
||||
skb_pull(skb, tx_params->internal_hdr_size);
|
||||
memset(info->driver_data, 0, IEEE80211_TX_INFO_DRIVER_DATA_SIZE);
|
||||
|
||||
ieee80211_tx_status_irqsafe(adapter->hw, skb);
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user