summaryrefslogtreecommitdiff
path: root/arch
diff options
context:
space:
mode:
authorArd Biesheuvel <ard.biesheuvel@linaro.org>2016-07-15 21:36:31 +0200
committerMatt Fleming <matt@codeblueprint.co.uk>2016-09-09 16:08:43 +0100
commitdce48e351c0d42014e5fb16ac3eb099e11b7e716 (patch)
tree97ec1bf70a8269d40598b5d1ed12f60d51ec18b4 /arch
parent21b3ddd39feecd2f4d6c52bcd30f0a4fa14f125a (diff)
efi: Replace runtime services spinlock with semaphore
The purpose of the efi_runtime_lock is to prevent concurrent calls into the firmware. There is no need to use spinlocks here, as long as we ensure that runtime service invocations from an atomic context (i.e., EFI pstore) cannot block. So use a semaphore instead, and use down_trylock() in the nonblocking case. We don't use a mutex here because the mutex_trylock() function must not be called from interrupt context, whereas the down_trylock() can. Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Cc: Leif Lindholm <leif.lindholm@linaro.org> Cc: Mark Rutland <mark.rutland@arm.com> Cc: Sylvain Chouleur <sylvain.chouleur@gmail.com> Signed-off-by: Matt Fleming <matt@codeblueprint.co.uk>
Diffstat (limited to 'arch')
0 files changed, 0 insertions, 0 deletions