Dear Eric Dumazet, On Tue, 21 Oct 2014 03:28:20 -0700, Eric Dumazet wrote:
> > Ok. So it's actually safe to mix spin_lock() and spin_lock_irqsave() on > > the same lock, if you know that this lock will never ever be taken in > > an interrupt context? > > Sure. Ok, thanks. > > > mvpp2 is seriously brain damaged : on_each_cpu() cannot be used from > > > a bottom half handler. > > > > That's what I thought. Back to the drawing board then, to fix mvpp2. > > > > Do you think there is a place where we can write down those > > assumptions? It isn't easy to spot whether on_each_cpu() is safe to use > > in a bottom half or not. > > > > Really ? kernel/smp.c is full of comments. > > Too many comments and people seem to not read them ;) > > Take a look at smp_call_function(), which is called from on_each_cpu() Indeed, it's written black on white on smp_call_function(). I guess we'll have to dig into the details of the mvpp2 hardware and its per-CPU registers and see how to handle things properly. Thanks a lot for your input! Thomas -- Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/

