On Sun, Oct 18, 2020 at 04:13:28PM +0200, Heiner Kallweit wrote: > On a side note, because I'm also just dealing with it: this_cpu_ptr() > is safe only if preemption is disabled. Is this the case here? Else > there's get_cpu_ptr/put_cpu_ptr.
lockdep would shout about using smp_processor_id() in preemptible context? Because it doesn't do that, and never did, but I don't really understand why, coming to think of it. > Also, if irq's aren't disabled there might be a need to use > u64_stats_update_begin_irqsave() et al. See: 2695578b896a ("net: > usbnet: fix potential deadlock on 32bit hosts") But I don't know dsa > good enough to say whether this is applicable here. DSA xmit and receive path do not run from hardirq context, just softirq, so I believe the issue reported to Eric there does not apply here.