[PATCH v4] ath10k: move mgmt descriptor limit handle under mgmt_tx

Michal Kazior michal.kazior at tieto.com
Tue Mar 8 22:14:48 PST 2016


On 9 March 2016 at 07:08, Rajkumar Manoharan <rmanohar at codeaurora.org> wrote:
> On , Michal Kazior wrote:
>>
>> On 8 March 2016 at 18:25, Rajkumar Manoharan <rmanohar at qti.qualcomm.com>
>> wrote:
>> [...]
>>>
>>> --- a/drivers/net/wireless/ath/ath10k/htt_rx.c
>>> +++ b/drivers/net/wireless/ath/ath10k/htt_rx.c
>>> @@ -2326,7 +2326,12 @@ void ath10k_htt_t2h_msg_handler(struct ath10k *ar,
>>> struct sk_buff *skb)
>>>                         break;
>>>                 }
>>>
>>> -               ath10k_txrx_tx_unref(htt, &tx_done);
>>> +               status = ath10k_txrx_tx_unref(htt, &tx_done);
>>> +               if (!status) {
>>> +                       spin_lock_bh(&htt->tx_lock);
>>> +                       ath10k_htt_tx_mgmt_dec_pending(htt);
>>> +                       spin_unlock_bh(&htt->tx_lock);
>>> +               }
>>
>> [...]
>>>
>>> @@ -3978,14 +3976,13 @@ static void ath10k_mac_op_tx(struct ieee80211_hw
>>> *hw,
>>>         txpath = ath10k_mac_tx_h_get_txpath(ar, skb, txmode);
>>>         is_htt = (txpath == ATH10K_MAC_TX_HTT ||
>>>                   txpath == ATH10K_MAC_TX_HTT_MGMT);
>>> +       is_mgmt = (txpath == ATH10K_MAC_TX_HTT_MGMT);
>>
>>
>> Are you sure you want to be counting nullfuncs here in as well (and
>> possibly other frames that end up, for whatever reason, on htt-mgmt
>> tx-path?)
>>
>
> frames that are transmitted via MGMT_TX are using reserved descriptor slots
> in firmware. So irrespective of frame type, num_pending_mgmt_tx should count
> all to limit probe resp. Here mgmt_tx does not mean frame type but HTT
> txmode (HTT_H2T_MSG_TYPE_MGMT_TX).
>
> So ATH10K_SKB_F_MGMT check in tx-compl is not needed. is_mgmt = (txpath ==
> ATH10K_MAC_TX_HTT_MGMT);
>
> Do you see any issues if nullfunc/other data via MGMT_TX are counted.

If firmware handles them the same way it should be okay I guess. I
would do suggest to make the commit log more explicit on this though
(i.e. the limit is for the path itself, not for mgmt frames per se).


Michał



More information about the ath10k mailing list