From: Ido Schimmel <[email protected]>
Date: Sun, 3 Mar 2019 07:34:57 +0000
> Similar to commit 44f49dd8b5a6 ("ipmr: fix possible race resulting from
> improper usage of IP_INC_STATS_BH() in preemptible context."), we cannot
> assume preemption is disabled when incrementing the counter and
> accessing a per-CPU variable.
>
> Preemption can be enabled when we add a route in process context that
> corresponds to packets stored in the unresolved queue, which are then
> forwarded using this route [1].
>
> Fix this by using IP6_INC_STATS() which takes care of disabling
> preemption on architectures where it is needed.
...
> Fixes: 0912ea38de61 ("[IPV6] MROUTE: Add stats in multicast routing module
> method ip6_mr_forward().")
> Signed-off-by: Ido Schimmel <[email protected]>
> Reported-by: Amit Cohen <[email protected]>
Applied and queued up for -stable, thanks.