[RFC/RFT 5/7] ath10k: batch htt tx/rx completions
Michal Kazior
michal.kazior at tieto.com
Thu Feb 20 06:23:10 EST 2014
On 19 February 2014 16:10, Kalle Valo <kvalo at qca.qualcomm.com> wrote:
> Michal Kazior <michal.kazior at tieto.com> writes:
>
>> HTT Rx endpoint processes both frame rx
>> indications and frame tx completion indications.
>>
>> Those completions typically come in batches and
>> may be mixed so it makes sense to defer processing
>> hoping to get a bunch of them and take advantage
>> of hot caches.
>>
>> Signed-off-by: Michal Kazior <michal.kazior at tieto.com>
>
> [...]
>
>> @@ -270,7 +274,7 @@ static inline struct sk_buff *ath10k_htt_rx_netbuf_pop(struct ath10k_htt *htt)
>> int idx;
>> struct sk_buff *msdu;
>>
>> - spin_lock_bh(&htt->rx_ring.lock);
>> + lockdep_assert_held(&htt->rx_ring.lock);
>
> There are some locking changes which I think would be better to have in
> a separate patch.
I don't think it makes much sense. It seems silly to move a few lines
in one patch to move some of those lines again in another one.
>> case HTT_T2H_MSG_TYPE_MGMT_TX_COMPLETION: {
>> + struct htt_resp *resp = (struct htt_resp *)skb->data;
>> struct htt_tx_done tx_done = {};
>> int status = __le32_to_cpu(resp->mgmt_tx_completion.status);
>>
>> - tx_done.msdu_id =
>> - __le32_to_cpu(resp->mgmt_tx_completion.desc_id);
>> + tx_done.msdu_id = __le32_to_cpu(resp->mgmt_tx_completion.desc_id);
>
> I don't see any changes here.
Right. I'll cut this hunk out.
Michał
More information about the ath10k
mailing list