forked from Mirrors/opensbi
lib: sbi: Add missing sscrind and sscfg extensions in sbi_hart_ext[]
The sbi_hart_ext[] array is missing these two extensions ids. It is
expected that this array contains all the extensions declaration at the
same index of the SBI_HART_EXT_* define. Without this, when adding a new
extension, there is a mismatch between ids and extension names and it
can even display corrupted extension names.
Addresses-Coverity-ID: 1584994 Out-of-bounds read
Fixes: 6bb6b61c27
("lib: sbi: Add support for smcsrind and smcdeleg")
Signed-off-by: Clément Léger <cleger@rivosinc.com>
Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Reviewed-by: Anup Patel <anup@brainfault.org>
This commit is contained in:

committed by
Anup Patel

parent
a7c5c2cbd2
commit
68bc031a76
@@ -666,8 +666,13 @@ const struct sbi_hart_ext_data sbi_hart_ext[] = {
|
|||||||
__SBI_HART_EXT_DATA(sdtrig, SBI_HART_EXT_SDTRIG),
|
__SBI_HART_EXT_DATA(sdtrig, SBI_HART_EXT_SDTRIG),
|
||||||
__SBI_HART_EXT_DATA(smcsrind, SBI_HART_EXT_SMCSRIND),
|
__SBI_HART_EXT_DATA(smcsrind, SBI_HART_EXT_SMCSRIND),
|
||||||
__SBI_HART_EXT_DATA(smcdeleg, SBI_HART_EXT_SMCDELEG),
|
__SBI_HART_EXT_DATA(smcdeleg, SBI_HART_EXT_SMCDELEG),
|
||||||
|
__SBI_HART_EXT_DATA(sscsrind, SBI_HART_EXT_SSCSRIND),
|
||||||
|
__SBI_HART_EXT_DATA(ssccfg, SBI_HART_EXT_SSCCFG),
|
||||||
};
|
};
|
||||||
|
|
||||||
|
_Static_assert(SBI_HART_EXT_MAX == array_size(sbi_hart_ext),
|
||||||
|
"sbi_hart_ext[]: wrong number of entries");
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get the hart extensions in string format
|
* Get the hart extensions in string format
|
||||||
*
|
*
|
||||||
|
Reference in New Issue
Block a user