]> git.dujemihanovic.xyz Git - u-boot.git/commitdiff
lmb: add a check to prevent memory overrun
authorSughosh Ganu <sughosh.ganu@linaro.org>
Mon, 21 Oct 2024 17:18:20 +0000 (22:48 +0530)
committerTom Rini <trini@konsulko.com>
Tue, 29 Oct 2024 18:09:49 +0000 (12:09 -0600)
When printing the LMB flags for a memory region, there is a need to
check that the array index that is computed is a sane value. Put a
noisy assert in case this check fails, as that implies something with
the LMB code is not working as expected.

Reported-by: Coverity (CID 510463)
Signed-off-by: Sughosh Ganu <sughosh.ganu@linaro.org>
lib/lmb.c

index eec99c185ee55b93851380936ecb4b072fcb02b3..bf261db999eed9f36f7987e8dae6e7ade831a5fc 100644 (file)
--- a/lib/lmb.c
+++ b/lib/lmb.c
@@ -76,6 +76,7 @@ static void lmb_print_region_flags(enum lmb_flags flags)
 
        do {
                bitpos = flags ? fls(flags) - 1 : 0;
+               assert_noisy(bitpos < ARRAY_SIZE(flag_str));
                printf("%s", flag_str[bitpos]);
                flags &= ~(1ull << bitpos);
                puts(flags ? ", " : "\n");