From 66b0e23a0cecb863b8fbb24c337be5710f31da62 Mon Sep 17 00:00:00 2001 From: Andrew Jones Date: Mon, 30 Jan 2023 17:42:24 +0100 Subject: [PATCH] lib: sbi: Ensure domidx_to_domain_table is null-terminated sbi_domain_for_each() requires domidx_to_domain_table[] to be null-terminated. Allocate one extra element which will always be null. Signed-off-by: Andrew Jones Reviewed-by: Anup Patel --- lib/sbi/sbi_domain.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/lib/sbi/sbi_domain.c b/lib/sbi/sbi_domain.c index 3ab1fbe..3813f1b 100644 --- a/lib/sbi/sbi_domain.c +++ b/lib/sbi/sbi_domain.c @@ -17,8 +17,12 @@ #include #include +/* + * We allocate an extra element because sbi_domain_for_each() expects + * the array to be null-terminated. + */ +struct sbi_domain *domidx_to_domain_table[SBI_DOMAIN_MAX_INDEX + 1] = { 0 }; struct sbi_domain *hartid_to_domain_table[SBI_HARTMASK_MAX_BITS] = { 0 }; -struct sbi_domain *domidx_to_domain_table[SBI_DOMAIN_MAX_INDEX] = { 0 }; static u32 domain_count = 0; static bool domain_finalized = false;