From: Kalle Valo <kvalo@qca.qualcomm.com>
To: Michal Kazior <michal.kazior@tieto.com>
Cc: linux-wireless <linux-wireless@vger.kernel.org>,
"ath10k@lists.infradead.org" <ath10k@lists.infradead.org>
Subject: Re: [PATCH v3 4/8] ath10k: bypass htc for htt tx path
Date: Fri, 28 Feb 2014 11:28:23 +0200 [thread overview]
Message-ID: <87txbjbn7s.fsf@kamboji.qca.qualcomm.com> (raw)
In-Reply-To: <CA+BoTQn8GTu3A4LdRGtpJeVr0SnaApTwnNZAoZ8=3Vj5qF+W=g@mail.gmail.com> (Michal Kazior's message of "Fri, 28 Feb 2014 10:15:20 +0100")
Michal Kazior <michal.kazior@tieto.com> writes:
> On 28 February 2014 10:06, Kalle Valo <kvalo@qca.qualcomm.com> wrote:
>> Michal Kazior <michal.kazior@tieto.com> writes:
>>
>>> --- a/drivers/net/wireless/ath/ath10k/htc.c
>>> +++ b/drivers/net/wireless/ath/ath10k/htc.c
>>> @@ -202,10 +202,8 @@ static int ath10k_htc_tx_completion_handler(struct ath10k *ar,
>>> struct ath10k_htc *htc = &ar->htc;
>>> struct ath10k_htc_ep *ep = &htc->endpoint[eid];
>>>
>>> - if (!skb) {
>>> - ath10k_warn("invalid sk_buff completion - NULL pointer. firmware crashed?\n");
>>> + if (WARN_ON(!skb))
>>> return 0;
>>> - }
>>
>> WARN_ON() is a bit dangerous here as it might cause excessive spamming.
>> Why did you want to change this? I think either ath10k_warn() or
>> WARN_ON_ONCE() would be safer, but not sure which one to use.
>
> After the scatter-gather patch no NULL skb should be ever passed to tx
> completion handler as those are ignored by hif/pci.
Sure. But that's just theory, in practise all sorts bugs can always
happen :)
> Perhaps the hunk should be moved from this patch to the scatter-gather
> one.
Nah, I don't think that's necessary.
> Perhaps WARN_ON() is a bit over the top here, but since this is now
> more of a logic issue rather than runtime issue I decided to change it
> from ath10k_warn to WARN_ON(). It's probably still a good idea to make
> it _ONCE generally, although if you actually get skbuff it's already
> too late or it should be screaming loudly because someone must've
> changed the code in an incorrect/incomplete way.
So I change it to WARN_ON_ONCE(), ok?
--
Kalle Valo
_______________________________________________
ath10k mailing list
ath10k@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/ath10k
WARNING: multiple messages have this Message-ID (diff)
From: Kalle Valo <kvalo@qca.qualcomm.com>
To: Michal Kazior <michal.kazior@tieto.com>
Cc: "ath10k@lists.infradead.org" <ath10k@lists.infradead.org>,
linux-wireless <linux-wireless@vger.kernel.org>
Subject: Re: [PATCH v3 4/8] ath10k: bypass htc for htt tx path
Date: Fri, 28 Feb 2014 11:28:23 +0200 [thread overview]
Message-ID: <87txbjbn7s.fsf@kamboji.qca.qualcomm.com> (raw)
In-Reply-To: <CA+BoTQn8GTu3A4LdRGtpJeVr0SnaApTwnNZAoZ8=3Vj5qF+W=g@mail.gmail.com> (Michal Kazior's message of "Fri, 28 Feb 2014 10:15:20 +0100")
Michal Kazior <michal.kazior@tieto.com> writes:
> On 28 February 2014 10:06, Kalle Valo <kvalo@qca.qualcomm.com> wrote:
>> Michal Kazior <michal.kazior@tieto.com> writes:
>>
>>> --- a/drivers/net/wireless/ath/ath10k/htc.c
>>> +++ b/drivers/net/wireless/ath/ath10k/htc.c
>>> @@ -202,10 +202,8 @@ static int ath10k_htc_tx_completion_handler(struct ath10k *ar,
>>> struct ath10k_htc *htc = &ar->htc;
>>> struct ath10k_htc_ep *ep = &htc->endpoint[eid];
>>>
>>> - if (!skb) {
>>> - ath10k_warn("invalid sk_buff completion - NULL pointer. firmware crashed?\n");
>>> + if (WARN_ON(!skb))
>>> return 0;
>>> - }
>>
>> WARN_ON() is a bit dangerous here as it might cause excessive spamming.
>> Why did you want to change this? I think either ath10k_warn() or
>> WARN_ON_ONCE() would be safer, but not sure which one to use.
>
> After the scatter-gather patch no NULL skb should be ever passed to tx
> completion handler as those are ignored by hif/pci.
Sure. But that's just theory, in practise all sorts bugs can always
happen :)
> Perhaps the hunk should be moved from this patch to the scatter-gather
> one.
Nah, I don't think that's necessary.
> Perhaps WARN_ON() is a bit over the top here, but since this is now
> more of a logic issue rather than runtime issue I decided to change it
> from ath10k_warn to WARN_ON(). It's probably still a good idea to make
> it _ONCE generally, although if you actually get skbuff it's already
> too late or it should be screaming loudly because someone must've
> changed the code in an incorrect/incomplete way.
So I change it to WARN_ON_ONCE(), ok?
--
Kalle Valo
next prev parent reply other threads:[~2014-02-28 9:28 UTC|newest]
Thread overview: 80+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-02-17 9:32 [RFC/RFT 0/7] ath10k: performance improvements Michal Kazior
2014-02-17 9:32 ` Michal Kazior
2014-02-17 9:32 ` [RFC/RFT 1/7] ath10k: remove DMA mapping wrappers Michal Kazior
2014-02-17 9:32 ` Michal Kazior
2014-02-19 12:37 ` Kalle Valo
2014-02-19 12:37 ` Kalle Valo
2014-02-17 9:32 ` [RFC/RFT 2/7] ath10k: remove is_aborted from skb_cb Michal Kazior
2014-02-17 9:32 ` Michal Kazior
2014-02-17 9:32 ` [RFC/RFT 3/7] ath10k: replace send_head() with tx_sg() Michal Kazior
2014-02-17 9:32 ` Michal Kazior
2014-02-19 12:48 ` Kalle Valo
2014-02-19 12:48 ` Kalle Valo
2014-02-19 13:25 ` Michal Kazior
2014-02-19 13:25 ` Michal Kazior
2014-02-19 14:18 ` Kalle Valo
2014-02-19 14:18 ` Kalle Valo
2014-02-20 6:43 ` Michal Kazior
2014-02-20 6:43 ` Michal Kazior
2014-02-24 11:46 ` Kalle Valo
2014-02-24 11:46 ` Kalle Valo
2014-02-17 9:32 ` [RFC/RFT 4/7] ath10k: bypass htc for htt tx path Michal Kazior
2014-02-17 9:32 ` Michal Kazior
2014-02-19 14:56 ` Kalle Valo
2014-02-19 14:56 ` Kalle Valo
2014-02-17 9:32 ` [RFC/RFT 5/7] ath10k: batch htt tx/rx completions Michal Kazior
2014-02-17 9:32 ` Michal Kazior
2014-02-19 15:10 ` Kalle Valo
2014-02-19 15:10 ` Kalle Valo
2014-02-20 11:23 ` Michal Kazior
2014-02-20 11:23 ` Michal Kazior
2014-02-24 11:49 ` Kalle Valo
2014-02-24 11:49 ` Kalle Valo
2014-02-17 9:32 ` [RFC/RFT 6/7] ath10k: remove pci completion list Michal Kazior
2014-02-17 9:32 ` Michal Kazior
2014-02-17 9:32 ` [RFC/RFT 7/7] ath10k: minimize coherent dma accesses Michal Kazior
2014-02-17 9:32 ` Michal Kazior
2014-02-17 15:01 ` [RFC/RFT 0/7] ath10k: performance improvements Kalle Valo
2014-02-17 15:01 ` Kalle Valo
2014-02-19 15:16 ` Kalle Valo
2014-02-19 15:16 ` Kalle Valo
2014-02-26 11:34 ` [PATCH v2 0/8] " Michal Kazior
2014-02-26 11:34 ` Michal Kazior
2014-02-26 11:34 ` [PATCH v2 1/8] ath10k: remove DMA mapping wrappers Michal Kazior
2014-02-26 11:34 ` Michal Kazior
2014-02-26 11:34 ` [PATCH v2 2/8] ath10k: remove is_aborted from skb_cb Michal Kazior
2014-02-26 11:34 ` Michal Kazior
2014-02-26 12:09 ` [PATCH v2 0/8] ath10k: performance improvements Michal Kazior
2014-02-26 12:09 ` Michal Kazior
2014-02-27 7:19 ` [PATCH v3 " Michal Kazior
2014-02-27 7:19 ` Michal Kazior
2014-02-27 7:19 ` [PATCH v3 1/8] ath10k: remove DMA mapping wrappers Michal Kazior
2014-02-27 7:19 ` Michal Kazior
2014-02-27 7:19 ` [PATCH v3 2/8] ath10k: remove is_aborted from skb_cb Michal Kazior
2014-02-27 7:19 ` Michal Kazior
2014-02-27 7:19 ` [PATCH v3 3/8] ath10k: replace send_head() with tx_sg() Michal Kazior
2014-02-27 7:19 ` Michal Kazior
2014-02-27 7:19 ` [PATCH v3 4/8] ath10k: bypass htc for htt tx path Michal Kazior
2014-02-27 7:19 ` Michal Kazior
2014-02-28 9:06 ` Kalle Valo
2014-02-28 9:06 ` Kalle Valo
2014-02-28 9:15 ` Michal Kazior
2014-02-28 9:15 ` Michal Kazior
2014-02-28 9:28 ` Kalle Valo [this message]
2014-02-28 9:28 ` Kalle Valo
2014-02-28 9:54 ` Michal Kazior
2014-02-28 9:54 ` Michal Kazior
2014-02-27 7:19 ` [PATCH v3 5/8] ath10k: batch htt tx/rx completions Michal Kazior
2014-02-27 7:19 ` Michal Kazior
2014-02-28 9:00 ` Kalle Valo
2014-02-28 9:00 ` Kalle Valo
2014-02-28 9:07 ` Michal Kazior
2014-02-28 9:07 ` Michal Kazior
2014-02-27 7:19 ` [PATCH v3 6/8] ath10k: reduce htt tx/rx spinlock overhead Michal Kazior
2014-02-27 7:19 ` Michal Kazior
2014-02-27 7:19 ` [PATCH v3 7/8] ath10k: remove pci completion list Michal Kazior
2014-02-27 7:19 ` Michal Kazior
2014-02-27 7:19 ` [PATCH v3 8/8] ath10k: minimize coherent dma accesses Michal Kazior
2014-02-27 7:19 ` Michal Kazior
2014-02-28 10:13 ` [PATCH v3 0/8] ath10k: performance improvements Kalle Valo
2014-02-28 10:13 ` Kalle Valo
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=87txbjbn7s.fsf@kamboji.qca.qualcomm.com \
--to=kvalo@qca.qualcomm.com \
--cc=ath10k@lists.infradead.org \
--cc=linux-wireless@vger.kernel.org \
--cc=michal.kazior@tieto.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.