Re: [PATCH 4.9] brcmfmac: use correct skb freeing helper when deleting flowring

From: RafaÅ MiÅecki
Date: Tue Sep 27 2016 - 07:59:20 EST


On 27 September 2016 at 13:44, RafaÅ MiÅecki <zajec5@xxxxxxxxx> wrote:
> On 27 September 2016 at 13:27, Kalle Valo <kvalo@xxxxxxxxxxxxxx> wrote:
>> Arend Van Spriel <arend.vanspriel@xxxxxxxxxxxx> writes:
>>
>>> On 27-9-2016 11:14, RafaÅ MiÅecki wrote:
>>>> From: RafaÅ MiÅecki <rafal@xxxxxxxxxx>
>>>>
>>>> Flowrings contain skbs waiting for transmission that were passed to us
>>>> by netif. It means we checked every one of them looking for 802.1x
>>>> Ethernet type. When deleting flowring we have to use freeing function
>>>> that will check for 802.1x type as well.
>>>>
>>>> Freeing skbs without a proper check was leading to counter not being
>>>> properly decreased. This was triggering a WARNING every time
>>>> brcmf_netdev_wait_pend8021x was called.
>>>
>>> Acked-by: Arend van Spriel <arend@xxxxxxxxxxxx>
>>>> Signed-off-by: RafaÅ MiÅecki <rafal@xxxxxxxxxx>
>>>> ---
>>>> Kalle: this isn't important enough for 4.8 as it's too late for that.
>>>>
>>>> I'd like to get it for 4.9 however, as this fixes bug that could lead
>>>> to WARNING on every add_key/del_key call. We was struggling with these
>>>> WARNINGs for some time and this fixes one of two problems causing them.
>>
>> Ok, I'll queue this for 4.9.
>>
>>> Please mark it for stable as well.
>>
>> I can add that. Any ideas how old releases stable releases should this
>> go to?
>
> I was analyzing this.
> 1) This patch uses brcmf_get_ifp which is available in 4.4+ only.
> 2) It applies cleanly to 4.5+ only due to 32f90caa7debd ("brcmfmac:
> Increase nr of supported flowrings.")
> 3) 4.4 would also require applying to the patch without broadcom/ subdir
>
> That said I suggest 4.5+. Any objections?

Let me see if patchwork with pick Cc tag as it does for others.

Cc: stable@xxxxxxxxxxxxxxx # 4.5+

This may be worth backporting to 4.4 as well (as it's longterm), but
I'll do it separately due to patch not applying cleanly.

--
RafaÅ