Since commit 863a2251393e ("state: make first boot less verbose"),
state_load returns -ENOMEDIUM instead of -ENOENT if we detect
a first load because all buckets are zero.

This case is expected and shouldn't warrant an error message, so
adjust callers appropriately.

Signed-off-by: Ahmad Fatoum <a.fat...@pengutronix.de>
---
 commands/state.c          | 3 +++
 common/efi/payload/init.c | 2 +-
 2 files changed, 4 insertions(+), 1 deletion(-)

diff --git a/commands/state.c b/commands/state.c
index e7cb9902f71a..56ef93b19fa4 100644
--- a/commands/state.c
+++ b/commands/state.c
@@ -53,6 +53,9 @@ static int do_state(int argc, char *argv[])
                ret = state_save(state);
        }
 
+       if (ret == -ENOMEDIUM)
+               ret = 0;
+
        return ret;
 }
 
diff --git a/common/efi/payload/init.c b/common/efi/payload/init.c
index e2bddabc9a42..6976285fb3c3 100644
--- a/common/efi/payload/init.c
+++ b/common/efi/payload/init.c
@@ -359,7 +359,7 @@ static int efi_late_init(void)
                        return PTR_ERR(state);
 
                ret = state_load(state);
-               if (ret)
+               if (ret != -ENOMEDIUM)
                        pr_warn("Failed to load persistent state, continuing 
with defaults, %d\n",
                                ret);
 
-- 
2.30.2


Reply via email to