]> git.baikalelectronics.ru Git - kernel.git/commit
efi: Disable runtime services on RT
authorSebastian Andrzej Siewior <bigeasy@linutronix.de>
Fri, 24 Sep 2021 13:49:18 +0000 (15:49 +0200)
committerArd Biesheuvel <ardb@kernel.org>
Tue, 28 Sep 2021 20:43:53 +0000 (22:43 +0200)
commitacdd2a68f51b56a713ee7956c5e0f071dc6d830d
treeced8de831c6a09dbf6c5226fa55b399b89e84920
parentb901123b83fca756ffcd85ea50a6cd9637d66d0c
efi: Disable runtime services on RT

Based on measurements the EFI functions get_variable /
get_next_variable take up to 2us which looks okay.
The functions get_time, set_time take around 10ms. These 10ms are too
much. Even one ms would be too much.
Ard mentioned that SetVariable might even trigger larger latencies if
the firmware will erase flash blocks on NOR.

The time-functions are used by efi-rtc and can be triggered during
run-time (either via explicit read/write or ntp sync).

The variable write could be used by pstore.
These functions can be disabled without much of a loss. The poweroff /
reboot hooks may be provided by PSCI.

Disable EFI's runtime wrappers on PREEMPT_RT.

This was observed on "EFI v2.60 by SoftIron Overdrive 1000".

Acked-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
drivers/firmware/efi/efi.c