Re: pstore: change mutex locking to spin_locks

From: Matthew Garrett
Date: Fri Aug 12 2011 - 13:59:23 EST


On Fri, Aug 12, 2011 at 10:54:51AM -0700, Luck, Tony wrote:
> From: Don Zickus <dzickus@xxxxxxxxxx>
>
> pstore was using mutex locking to protect read/write access to the
> backend plug-ins. This causes problems when pstore is executed in
> an NMI context through panic() -> kmsg_dump().
>
> This patch changes the mutex to a spin_lock_irqsave then also checks to
> see if we are in an NMI context. If we are in an NMI and can't get the
> lock, just print a message stating that and blow by the locking.
>
> All this is probably a hack around the bigger locking problem but it
> solves my current situation of trying to sleep in an NMI context.
>
> Tested by loading the lkdtm module and executing a HARDLOCKUP which
> will cause the machine to panic inside the nmi handler.
>
> Signed-off-by: Don Zickus <dzickus@xxxxxxxxxx>
> Signed-off-by: Tony Luck <tony.luck@xxxxxxxxx>
Acked-by: Matthew Garrett <mjg@xxxxxxxxxx>

--
Matthew Garrett | mjg59@xxxxxxxxxxxxx
--
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/