On 1/14/20 10:25 AM, Gerd Hoffmann wrote:
Call find_prio("HALT") only once, on first is_bootprio_strict() call.
Store the result in a variable and reuse it on subsequent calls.

Signed-off-by: Gerd Hoffmann <[email protected]>

Reviewed-by: Philippe Mathieu-Daudé <[email protected]>

---
  src/boot.c | 6 +++++-
  1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/src/boot.c b/src/boot.c
index 5182ab426b9f..afeb36a3319a 100644
--- a/src/boot.c
+++ b/src/boot.c
@@ -297,7 +297,11 @@ find_prio(const char *glob)
u8 is_bootprio_strict(void)
  {
-    return find_prio("HALT") >= 0;
+    static int prio_halt = -2;
+
+    if (prio_halt == -2)
+        prio_halt = find_prio("HALT");
+    return prio_halt >= 0;
  }
int bootprio_find_pci_device(struct pci_device *pci)

_______________________________________________
SeaBIOS mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to