From 8d4252254a757ef61ca0b3d8fd54a95c2ce5d633 Mon Sep 17 00:00:00 2001 From: Gerd Hoffmann Date: Tue, 14 Jan 2020 09:56:31 +0100 Subject: boot: cache HALT priority 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 --- src/boot.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/boot.c b/src/boot.c index 5182ab42..afeb36a3 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) -- cgit