|
@@ -360,11 +360,14 @@ void zd_mac_tx_failed(struct ieee80211_hw *hw)
|
|
|
{
|
|
|
struct sk_buff_head *q = &zd_hw_mac(hw)->ack_wait_queue;
|
|
|
struct sk_buff *skb;
|
|
|
- struct ieee80211_tx_status status = {{0}};
|
|
|
+ struct ieee80211_tx_status status;
|
|
|
|
|
|
skb = skb_dequeue(q);
|
|
|
if (skb == NULL)
|
|
|
return;
|
|
|
+
|
|
|
+ memset(&status, 0, sizeof(status));
|
|
|
+
|
|
|
tx_status(hw, skb, &status, 0);
|
|
|
}
|
|
|
|
|
@@ -389,7 +392,8 @@ void zd_mac_tx_to_dev(struct sk_buff *skb, int error)
|
|
|
if (unlikely(error ||
|
|
|
(cb->control->flags & IEEE80211_TXCTL_NO_ACK)))
|
|
|
{
|
|
|
- struct ieee80211_tx_status status = {{0}};
|
|
|
+ struct ieee80211_tx_status status;
|
|
|
+ memset(&status, 0, sizeof(status));
|
|
|
tx_status(hw, skb, &status, !error);
|
|
|
} else {
|
|
|
struct sk_buff_head *q =
|
|
@@ -603,7 +607,9 @@ static int filter_ack(struct ieee80211_hw *hw, struct ieee80211_hdr *rx_hdr,
|
|
|
tx_hdr = (struct ieee80211_hdr *)skb->data;
|
|
|
if (likely(!compare_ether_addr(tx_hdr->addr2, rx_hdr->addr1)))
|
|
|
{
|
|
|
- struct ieee80211_tx_status status = {{0}};
|
|
|
+ struct ieee80211_tx_status status;
|
|
|
+
|
|
|
+ memset(&status, 0, sizeof(status));
|
|
|
status.flags = IEEE80211_TX_STATUS_ACK;
|
|
|
status.ack_signal = stats->ssi;
|
|
|
__skb_unlink(skb, q);
|