Tony Chuang <yhchuang@xxxxxxxxxxx> writes: >> > + } >> > + >> > + info = IEEE80211_SKB_CB(skb); >> > + ieee80211_tx_info_clear_status(info); >> > + info->flags |= IEEE80211_TX_STAT_ACK; >> > + ieee80211_tx_status_irqsafe(hw, skb); >> >> Always report ACK ? > > The ACK report is for mac80211 stack, it looks abnormal at the first glance. > But we can only do this for every data frame because there is no ack report > unless the driver ask the firmware to give one. > Ask for every data frame is resource consuming. I don't remember how mac80211 wants to handle the cases when the hardware doesn't provide ack status, but lying that to mac80211 sounds like a bad idea to me. Anyone have any suggestions how this should be handled? At the minimum add a proper comment explaining why you are lying to mac80211. -- Kalle Valo