Re: pstore: change mutex locking to spin_locks

From: Don Zickus
Date: Thu Aug 18 2011 - 09:05:17 EST


On Wed, Aug 17, 2011 at 11:47:59PM +0200, Peter Zijlstra wrote:
> On Wed, 2011-08-17 at 14:22 -0700, Andrew Morton wrote:
> > It's still bad if lockdep is enabled. See
> > kernel/lockdep.c:lock_acquire() and lock_release(). They aren't
> > NMI-safe.
>
> Good thing nmi_enter() does lockdep_disable() and makes lock_acquire()
> bail on if (current->lockdep_recursion).
>
> Still the fact that pstore needs locks from NMI context (let alone tried
> to use a mutex) makes one think one should avoid it like the plague.

Unfortunately, this plague is called ACPI4 (well APEI). It's an attempt
to provide a coherent strategy for platform errors. It needs a lot of
love to make it work, so we can't just avoid it (well us distro folks have
customers who want this). :-(

I have been having conversations with Matthew and Vivek Goyal about how to
simplify kmsg_dump, which might allow us to make some of the pstore paths
lockless, simplifying the solution. We'll see how that goes.

Cheers,
Don
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/