On 06/07/2018 09:06 AM, gree...@candelatech.com wrote:
> From: Ben Greear <gree...@candelatech.com>
> 
> While testing an ath10k firmware that often crashed under load,
> I was seeing kernel crashes as well.  One of them appeared to
> be a dereference of a NULL flow object in fq_tin_dequeue.
> 
> I have since fixed the firmware flaw, but I think it would be
> worth adding the WARN_ON in case the problem appears again.
> 
>  common_interrupt+0xf/0xf
>  </IRQ>
> 

Please find the exact commit that brought this bug,
and add a corresponding Fixes: tag

> Signed-off-by: Ben Greear <gree...@candelatech.com>
> ---
>  include/net/fq_impl.h | 3 +++
>  1 file changed, 3 insertions(+)
> 
> diff --git a/include/net/fq_impl.h b/include/net/fq_impl.h
> index be7c0fa..e40354d 100644
> --- a/include/net/fq_impl.h
> +++ b/include/net/fq_impl.h
> @@ -80,6 +80,9 @@ static struct sk_buff *fq_tin_dequeue(struct fq *fq,
>  
>       flow = list_first_entry(head, struct fq_flow, flowchain);
>  
> +     if (WARN_ON_ONCE(!flow))
> +             return NULL;
> +
>       if (flow->deficit <= 0) {
>               flow->deficit += fq->quantum;
>               list_move_tail(&flow->flowchain,
> 

Reply via email to