summaryrefslogtreecommitdiff
path: root/boot
diff options
context:
space:
mode:
authorAndreas Pretzsch <[email protected]>2025-10-02 18:24:58 +0200
committerTom Rini <[email protected]>2025-10-13 14:54:32 -0600
commitd6277523e54f4398dc5fe26e1d6151f400c974ca (patch)
treeefc559528b2f4e8dd5af512bcb27699033525340 /boot
parent48f21e66e360552c75d70a50421d0e0ed1f59e90 (diff)
bootstd: rauc: no valid slot fallback: fix info msg to reflect real flow
If there is no more active slot found in find_active_slot(), like when all slots in BOOT_ORDER have a count of 0, the counters are reset to their default value CONFIG_BOOTMETH_RAUC_DEFAULT_TRIES. The BOOT_ORDER is _not_ changed, which is logically correct (especially for the case when there is only one (active) slot set, e.g. BOOT_ORDER only contains 'B', probably due to RAUC option prevent-late-fallback being set). Resetting the counters of inactive slots also does not harm here, and is fine as a generic solution. But the log_info statement in this scenario INFO: Resetting boot order and all slot tries is incorrect. Change this to INFO: Resetting all slot tries to 3 with the 3 being inserted by CONFIG_BOOTMETH_RAUC_DEFAULT_TRIES. Signed-off-by: Andreas Pretzsch <[email protected]> Reviewed-by: Martin Schwan <[email protected]>
Diffstat (limited to 'boot')
-rw-r--r--boot/bootmeth_rauc.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/boot/bootmeth_rauc.c b/boot/bootmeth_rauc.c
index 81a73046e83..f5d5a971e87 100644
--- a/boot/bootmeth_rauc.c
+++ b/boot/bootmeth_rauc.c
@@ -18,6 +18,7 @@
#include <malloc.h>
#include <mapmem.h>
#include <string.h>
+#include <linux/stringify.h>
#include <asm/cache.h>
/* Length of env var "BOOT_*_LEFT" */
@@ -304,7 +305,7 @@ static int find_active_slot(char **slot_name, ulong *slot_tries)
if (!slot_found) {
if (IS_ENABLED(CONFIG_BOOTMETH_RAUC_RESET_ALL_ZERO_TRIES)) {
log_warning("WARNING: No valid slot found\n");
- log_info("INFO: Resetting boot order and all slot tries\n");
+ log_info("INFO: Resetting all slot tries to " __stringify(CONFIG_BOOTMETH_RAUC_DEFAULT_TRIES) "\n");
boot_order_list = str_to_list(CONFIG_BOOTMETH_RAUC_BOOT_ORDER);
for (i = 0; boot_order_list[i]; i++) {
sprintf(boot_left, "BOOT_%s_LEFT", boot_order_list[i]);