[PATCH v2 03/13] firmware: google: Test spinlock on panic path to avoid lockups

Guilherme G. Piccoli gpiccoli at igalia.com
Mon Aug 8 08:14:30 PDT 2022


On 08/08/2022 02:07, Evan Green wrote:
> On Tue, Jul 19, 2022 at 12:55 PM Guilherme G. Piccoli
> <gpiccoli at igalia.com> wrote:
>>
>> Currently the gsmi driver registers a panic notifier as well as
>> reboot and die notifiers. The callbacks registered are called in
>> atomic and very limited context - for instance, panic disables
>> preemption and local IRQs, also all secondary CPUs (not executing
>> the panic path) are shutdown.
>>
>> With that said, taking a spinlock in this scenario is a dangerous
>> invitation for lockup scenarios. So, fix that by checking if the
>> spinlock is free to acquire in the panic notifier callback - if not,
>> bail-out and avoid a potential hang.
>>
>> Fixes: 74c5b31c6618 ("driver: Google EFI SMI")
>> Cc: Ard Biesheuvel <ardb at kernel.org>
>> Cc: David Gow <davidgow at google.com>
>> Cc: Evan Green <evgreen at chromium.org>
>> Cc: Julius Werner <jwerner at chromium.org>
>> Signed-off-by: Guilherme G. Piccoli <gpiccoli at igalia.com>
> 
> Reviewed-by: Evan Green <evgreen at chromium.org>

Thanks a bunch Evan!

Ard / Greg, do you think you could get this patch through your -next (or
-fixes) trees? Not sure which tree is the most common for picking GSMI
stuff.

I'm trying to get these fixes merged individually in their trees to not
stall the whole series and increase the burden of re-submitting.
Thanks in advance,


Guilherme



More information about the kexec mailing list