diff options
| author | Breno Leitao <leitao@debian.org> | 2026-06-16 05:09:35 -0700 |
|---|---|---|
| committer | Ard Biesheuvel <ardb@kernel.org> | 2026-08-20 14:45:04 +0300 |
| commit | ecbccdbdab5d31e1e465e3f789d57bb34e5452cd (patch) | |
| tree | 073a19c95934d300d29f09418c624e6425841f47 /include | |
| parent | 718ee46ba4d95d28d50d3f6437afbbe2be531175 (diff) | |
| download | linux-ecbccdbdab5d31e1e465e3f789d57bb34e5452cd.tar.gz linux-ecbccdbdab5d31e1e465e3f789d57bb34e5452cd.zip | |
efi/runtime-wrappers: factor out efi_rts_park_worker()
x86's efi_crash_gracefully_on_page_fault() ends in an infinite
schedule() loop so the kworker that faulted in firmware never runs
efi_rts_wq again. A later change needs the same "park this worker
forever" primitive on the runtime service timeout path, so factor the
loop into a shared efi_rts_park_worker() and call it from the x86
page-fault handler.
No functional change.
Signed-off-by: Breno Leitao <leitao@debian.org>
Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
Diffstat (limited to 'include')
| -rw-r--r-- | include/linux/efi.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/include/linux/efi.h b/include/linux/efi.h index 24221a842412..b3c83516593d 100644 --- a/include/linux/efi.h +++ b/include/linux/efi.h @@ -1256,6 +1256,8 @@ extern struct efi_runtime_work efi_rts_work; /* Workqueue to queue EFI Runtime Services */ extern struct workqueue_struct *efi_rts_wq; +void __noreturn efi_rts_park_worker(void); + struct linux_efi_memreserve { int size; // allocated size of the array atomic_t count; // number of entries used |
