[PATCH] drivers: wdat: Avoid needless repeated probing

4 views
Skip to first unread message

Jan Kiszka

unread,
Jun 6, 2023, 1:52:26 PM6/6/23
to efibootguard-dev, Cedric Hombourger
From: Jan Kiszka <jan.k...@siemens.com>

It is sufficient to probe the ACPI tables once, not for every PCI device
found.

Signed-off-by: Jan Kiszka <jan.k...@siemens.com>
---
drivers/watchdog/wdat.c | 7 +++++++
1 file changed, 7 insertions(+)

diff --git a/drivers/watchdog/wdat.c b/drivers/watchdog/wdat.c
index e01bef4..7ba0ab1 100644
--- a/drivers/watchdog/wdat.c
+++ b/drivers/watchdog/wdat.c
@@ -135,6 +135,8 @@ typedef struct {

#pragma pack()

+static BOOLEAN probed_before;
+
/* --------------------------------------------------------------------------
* Parsing of ACPI/WDAT structures for efibootguard
* --------------------------------------------------------------------------
@@ -426,6 +428,11 @@ init(EFI_PCI_IO __attribute__((unused)) *pci_io,
UINT32 boot_status;
UINTN n;

+ /* We do not use PCI, and machines may have many PCI devices */
+ if (probed_before)
+ return EFI_UNSUPPORTED;
+ probed_before = TRUE;
+
/* Locate WDAT in ACPI tables */
status = locate_and_parse_rsdp(&wdat_table);
if (EFI_ERROR(status)) {
--
2.35.3
Reply all
Reply to author
Forward
0 new messages