From: Rajkumar Manoharan <rmanohar@codeaurora.org>
To: Michal Kazior <michal.kazior@tieto.com>
Cc: linux-wireless <linux-wireless@vger.kernel.org>,
Rajkumar Manoharan <rmanohar@qti.qualcomm.com>,
ath10k@lists.infradead.org
Subject: Re: [PATCH v3] ath10k: move mgmt descriptor limit handle under mgmt_tx
Date: Tue, 08 Mar 2016 22:13:09 +0530 [thread overview]
Message-ID: <3f8bfeb73178ec267d088f91a2f0350a@codeaurora.org> (raw)
In-Reply-To: <CA+BoTQk3i9QjF-W_1AZpMcwyceO-KDx8=R-swP0J-thqdxRcMg@mail.gmail.com>
On , Michal Kazior wrote:
> On 8 March 2016 at 13:54, Rajkumar Manoharan <rmanohar@codeaurora.org>
> wrote:
>> On , Michal Kazior wrote:
>>>
>>> On 8 March 2016 at 12:54, Rajkumar Manoharan
>>> <rmanohar@qti.qualcomm.com>
>>> wrote:
...]
>>>>
>>>> skb_cb = ATH10K_SKB_CB(msdu);
>>>> txq = skb_cb->txq;
>>>> artxq = (void *)txq->drv_priv;
>>>>
>>>> - if (unlikely(skb_cb->flags & ATH10K_SKB_F_MGMT) &&
>>>> - ar->hw_params.max_probe_resp_desc_thres)
>>>> - limit_mgmt_desc = true;
>>>> -
>>>
>>>
>>> Oh wait.. I didn't pay attention before, but this looks rather ugly.
>>> With this you will actually make the num_pending_mgmt_tx spin
>>> endlessly upwards on firmware with HTT 3.0 (and uses TX_FRM for mgmt
>>> tx and TX_COMPL_IND for completions), no?
>>>
>> Oops.. num_pending_mgmt_tx should be incremented only for MGMT_TX.
>> Thats
>> why it is moved out of txrx_tx_unref.
>
> Hmm.. in that case I think you should change is_htt in mac_op_tx() to
> compare only against TX_HTT_MGMT (instead of both TX_HTT and
> TX_HTT_MGMT).
>
> Note, the is_mgmt should stay as it is possible for the TX_HTT_MGMT to
> be used for non-mgmt frames in some cases. This also implies you need
> to check for ATH10K_SKB_F_MGMT on the mgmt-tx-completion event as well
> (you might get to handle NullFunc there).
>
If a frame is transmitted via MGMT_TX, the reserved descriptor slots
will be
used in firmware. So irrespective of type, num_pending_mgmt_tx should
count
all frames that are transmitted via MGMT_TX to control probe resp. Here
mgmt_tx
does not mean frame type but HTT tx type (HTT_H2T_MSG_TYPE_MGMT_TX).
So ATH10K_SKB_F_MGMT check in tx-compl is not needed. As you pointed
out,
since nullfunc also uses MGMT_TX, is_mgmt should be as below. (not frame
type)
is_mgmt = (txpath == ATH10K_MAC_TX_HTT_MGMT);
-Rajkumar
_______________________________________________
ath10k mailing list
ath10k@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/ath10k
WARNING: multiple messages have this Message-ID (diff)
From: Rajkumar Manoharan <rmanohar@codeaurora.org>
To: Michal Kazior <michal.kazior@tieto.com>
Cc: Rajkumar Manoharan <rmanohar@qti.qualcomm.com>,
ath10k@lists.infradead.org,
linux-wireless <linux-wireless@vger.kernel.org>
Subject: Re: [PATCH v3] ath10k: move mgmt descriptor limit handle under mgmt_tx
Date: Tue, 08 Mar 2016 22:13:09 +0530 [thread overview]
Message-ID: <3f8bfeb73178ec267d088f91a2f0350a@codeaurora.org> (raw)
In-Reply-To: <CA+BoTQk3i9QjF-W_1AZpMcwyceO-KDx8=R-swP0J-thqdxRcMg@mail.gmail.com>
On , Michal Kazior wrote:
> On 8 March 2016 at 13:54, Rajkumar Manoharan <rmanohar@codeaurora.org>
> wrote:
>> On , Michal Kazior wrote:
>>>
>>> On 8 March 2016 at 12:54, Rajkumar Manoharan
>>> <rmanohar@qti.qualcomm.com>
>>> wrote:
...]
>>>>
>>>> skb_cb = ATH10K_SKB_CB(msdu);
>>>> txq = skb_cb->txq;
>>>> artxq = (void *)txq->drv_priv;
>>>>
>>>> - if (unlikely(skb_cb->flags & ATH10K_SKB_F_MGMT) &&
>>>> - ar->hw_params.max_probe_resp_desc_thres)
>>>> - limit_mgmt_desc = true;
>>>> -
>>>
>>>
>>> Oh wait.. I didn't pay attention before, but this looks rather ugly.
>>> With this you will actually make the num_pending_mgmt_tx spin
>>> endlessly upwards on firmware with HTT 3.0 (and uses TX_FRM for mgmt
>>> tx and TX_COMPL_IND for completions), no?
>>>
>> Oops.. num_pending_mgmt_tx should be incremented only for MGMT_TX.
>> Thats
>> why it is moved out of txrx_tx_unref.
>
> Hmm.. in that case I think you should change is_htt in mac_op_tx() to
> compare only against TX_HTT_MGMT (instead of both TX_HTT and
> TX_HTT_MGMT).
>
> Note, the is_mgmt should stay as it is possible for the TX_HTT_MGMT to
> be used for non-mgmt frames in some cases. This also implies you need
> to check for ATH10K_SKB_F_MGMT on the mgmt-tx-completion event as well
> (you might get to handle NullFunc there).
>
If a frame is transmitted via MGMT_TX, the reserved descriptor slots
will be
used in firmware. So irrespective of type, num_pending_mgmt_tx should
count
all frames that are transmitted via MGMT_TX to control probe resp. Here
mgmt_tx
does not mean frame type but HTT tx type (HTT_H2T_MSG_TYPE_MGMT_TX).
So ATH10K_SKB_F_MGMT check in tx-compl is not needed. As you pointed
out,
since nullfunc also uses MGMT_TX, is_mgmt should be as below. (not frame
type)
is_mgmt = (txpath == ATH10K_MAC_TX_HTT_MGMT);
-Rajkumar
next prev parent reply other threads:[~2016-03-08 16:43 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-03-08 11:54 [PATCH v3] ath10k: move mgmt descriptor limit handle under mgmt_tx Rajkumar Manoharan
2016-03-08 11:54 ` Rajkumar Manoharan
2016-03-08 12:40 ` Michal Kazior
2016-03-08 12:40 ` Michal Kazior
2016-03-08 12:54 ` Rajkumar Manoharan
2016-03-08 12:54 ` Rajkumar Manoharan
2016-03-08 13:01 ` Michal Kazior
2016-03-08 13:01 ` Michal Kazior
2016-03-08 16:43 ` Rajkumar Manoharan [this message]
2016-03-08 16:43 ` Rajkumar Manoharan
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=3f8bfeb73178ec267d088f91a2f0350a@codeaurora.org \
--to=rmanohar@codeaurora.org \
--cc=ath10k@lists.infradead.org \
--cc=linux-wireless@vger.kernel.org \
--cc=michal.kazior@tieto.com \
--cc=rmanohar@qti.qualcomm.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.