linux-wireless.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Arend van Spriel <arend@broadcom.com>
To: "Rafał Miłecki" <zajec5@gmail.com>
Cc: Kalle Valo <kvalo@codeaurora.org>,
	linux-wireless <linux-wireless@vger.kernel.org>,
	Hante Meuleman <meuleman@broadcom.com>
Subject: Re: [PATCH V2 3/7] brcmfmac: Increase nr of supported flowrings.
Date: Sat, 29 Aug 2015 10:13:31 +0200	[thread overview]
Message-ID: <55E169AB.3080309@broadcom.com> (raw)
In-Reply-To: <CACna6ry3_4u_xAmeU8Hsoc96ZeVKFSq9zHL-yTFDT1hrgJa_BA@mail.gmail.com>

On 08/24/2015 10:02 PM, Rafał Miłecki wrote:
> On 24 August 2015 at 16:15, Arend van Spriel <arend@broadcom.com> wrote:
>> On 08/19/2015 11:56 PM, Rafał Miłecki wrote:
>>>
>>> On 16 August 2015 at 08:55, Arend van Spriel <arend@broadcom.com> wrote:
>>>>
>>>> From: Hante Meuleman <meuleman@broadcom.com>
>>>>
>>>> Next generation devices will have firmware which will have more
>>>> than 256 flowrings. This patch increases the maximum number of
>>>> supported flowrings to 512.
>>>>
>>>> Reviewed-by: Arend Van Spriel <arend@broadcom.com>
>>>> Reviewed-by: Franky (Zhenhui) Lin <frankyl@broadcom.com>
>>>> Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com>
>>>> Signed-off-by: Hante Meuleman <meuleman@broadcom.com>
>>>> Signed-off-by: Arend van Spriel <arend@broadcom.com>
>>>
>>>
>>> This is a patch that for my device triggers:
>>> Unable to handle kernel NULL pointer dereference at virtual address
>>> 00000014
>>>
>>> It seems to happen even when using only 1 AP interface.
>>
>>
>> Hi Rafał,
>>
>> What happens is that your platform has no memory to allocate a flowring for
>> tx and there is a bug in handling the returned error. Can you try it with
>> following applied. You will still have memory issue so for OpenWrt you may
>> need to limit to 256 anyway. Hante found another issue with hash_id in
>> struct brcmf_flowring so we are not entirely sure which issue caused the
>> null pointer deref so your feedback is appreciated.
>>
>> Regards,
>> Arend
>> ---
>>   drivers/net/wireless/brcm80211/brcmfmac/flowring.c | 4 ++--
>>   1 file changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/drivers/net/wireless/brcm80211/brcmfmac/flowring.c
>> b/drivers/net/wi
>> index 5b7a8ee..9fb50b3 100644
>> --- a/drivers/net/wireless/brcm80211/brcmfmac/flowring.c
>> +++ b/drivers/net/wireless/brcm80211/brcmfmac/flowring.c
>> @@ -151,11 +151,11 @@ u32 brcmf_flowring_create(struct brcmf_flowring *flow,
>> u8
>>                                  break;
>>                  }
>>                  if (i == flow->nrofrings)
>> -                       return -ENOMEM;
>> +                       return BRCMF_FLOWRING_INVALID_ID;
>>
>>                  ring = kzalloc(sizeof(*ring), GFP_ATOMIC);
>>                  if (!ring)
>> -                       return -ENOMEM;
>> +                       return BRCMF_FLOWRING_INVALID_ID;
>>
>>                  memcpy(hash[hash_idx].mac, mac, ETH_ALEN);
>>                  hash[hash_idx].fifo = fifo;
>
> Unfortunately this patch didn't help. I tied it on top of V3 of your
> last series plus "brcmfmac: Increase nr of supported flowrings.".

First about the warnings in core.c:1144. I believe they are fixed by one 
of the patches submitted last week [1].

Now about the problem upon start_xmit. The theory was that you had 
allocation failure leading to the null pointer deref. If you don't see 
any allocation failure on your setup that theory seems invalid. So there 
is another root cause that we need to find.

> I tried it 3 times, once I even got early NULL pointer dereference,
> when starting AP interface (before any STA connecting to it).

This seems like a different issue. Thanks for reporting. We will look 
into this.

Regards,
Arend

[1] https://patchwork.kernel.org/patch/7079891/


  reply	other threads:[~2015-08-29  8:13 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-08-16  6:55 [PATCH V2 0/7] brcmfmac: nvram loading and code rework Arend van Spriel
2015-08-16  6:55 ` [PATCH V2 1/7] brcmfmac: Add support for host platform NVRAM loading Arend van Spriel
2015-08-19 16:38   ` Rafał Miłecki
2015-08-19 20:55     ` Arend van Spriel
2015-08-20 19:50       ` Arend van Spriel
2015-08-24 19:28         ` Kalle Valo
2015-08-16  6:55 ` [PATCH V2 2/7] brcmfmac: correct interface combination info Arend van Spriel
2015-08-19 21:49   ` Rafał Miłecki
2015-08-19 21:59     ` Arend van Spriel
2015-08-16  6:55 ` [PATCH V2 3/7] brcmfmac: Increase nr of supported flowrings Arend van Spriel
2015-08-19 21:56   ` Rafał Miłecki
2015-08-24 14:15     ` Arend van Spriel
2015-08-24 20:02       ` Rafał Miłecki
2015-08-29  8:13         ` Arend van Spriel [this message]
2015-08-29  9:38           ` Rafał Miłecki
2015-08-29 10:48             ` Arend van Spriel
2015-08-20 16:16   ` Rafał Miłecki
2015-08-20 16:39     ` Arend van Spriel
2015-08-16  6:55 ` [PATCH V2 4/7] brcmfmac: add debugfs entry for msgbuf statistics Arend van Spriel
2015-08-16  6:55 ` [PATCH V2 5/7] brcmfmac: make use of cfg80211_check_combinations() Arend van Spriel
2015-08-16  6:55 ` [PATCH V2 6/7] brcmfmac: block the correct flowring when backup queue overflow Arend van Spriel
2015-08-16  6:55 ` [PATCH V2 7/7] brcmfmac: bump highest event number for 4339 firmware Arend van Spriel
2015-08-16 15:10 ` [PATCH V2 0/7] brcmfmac: nvram loading and code rework Rafał Miłecki
2015-08-17  8:01   ` Arend van Spriel
2015-08-17 14:25     ` Rafał Miłecki

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=55E169AB.3080309@broadcom.com \
    --to=arend@broadcom.com \
    --cc=kvalo@codeaurora.org \
    --cc=linux-wireless@vger.kernel.org \
    --cc=meuleman@broadcom.com \
    --cc=zajec5@gmail.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).