[U-Boot] [PATCH v2 05/13] bootstage: Allow calling bootstage_mark() before bootstage_init()
Simon Glass
sjg at chromium.org
Mon Apr 8 19:20:45 UTC 2019
It is possible for this to happen if something goes wrong very early in
the init sequence. Add a check for this.
Signed-off-by: Simon Glass <sjg at chromium.org>
---
Changes in v2:
- Add new patch to allow calling bootstage_mark() before bootstage_init()
common/bootstage.c | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/common/bootstage.c b/common/bootstage.c
index 9793b85d4e4..56ef91ad859 100644
--- a/common/bootstage.c
+++ b/common/bootstage.c
@@ -99,6 +99,13 @@ ulong bootstage_add_record(enum bootstage_id id, const char *name,
struct bootstage_data *data = gd->bootstage;
struct bootstage_record *rec;
+ /*
+ * initf_bootstage() is called very early during boot but since hang()
+ * calls bootstage_error() we can be called before bootstage is set up.
+ * Add a check to avoid this.
+ */
+ if (!data)
+ return mark;
if (flags & BOOTSTAGEF_ALLOC)
id = data->next_id++;
--
2.21.0.392.gf8f6787159e-goog
More information about the U-Boot
mailing list