Messages in this thread | | | Date | Thu, 18 Aug 2011 09:04:47 -0400 | From | Don Zickus <> | Subject | Re: pstore: change mutex locking to spin_locks |
| |
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
| |