qemu/hw-core-ensure-kernel_end-never-gets-used-undefined.patch

52 lines
2.0 KiB
Diff
Raw Normal View History

From 26faf838c837c09bf22ef6dc1621adc4e207fc8c Mon Sep 17 00:00:00 2001
From: guping <guping_yewu@cmss.chinamobile.com>
Date: Tue, 9 Jul 2024 11:56:12 +0000
Subject: [PATCH] hw/core: ensure kernel_end never gets used undefined
cherry-pick from f5fcc648083e71cfb9394894903f8ea108ff8831
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Really the problem here is the return values of fit_load_[kernel|fdt]() are a
little all over the place. However we don't want to somehow get
through not having set kernel_end and having it just be random unused
data.
The compiler complained on an --enable-gcov build:
In file included from ../../hw/core/loader-fit.c:20:
/home/alex/lsrc/qemu.git/include/qemu/osdep.h: In function load_fit:
/home/alex/lsrc/qemu.git/include/qemu/osdep.h:486:45: error: kernel_end may be used uninitialized [-Werror=maybe-uninitialized]
486 | #define ROUND_UP(n, d) ROUND_DOWN((n) + (d) - 1, (d))
| ^
../../hw/core/loader-fit.c:270:12: note: kernel_end was declared here
270 | hwaddr kernel_end;
| ^~~~~~~~~~
Reviewed-by: default avatarManos Pitsidianakis <manos.pitsidianakis@linaro.org>
Signed-off-by: default avatarAlex Bennée <alex.bennee@linaro.org>
Reviewed-by: default avatarAleksandar Rikalo <arikalo@gmail.com>
Message-Id: <20240705084047.857176-5-alex.bennee@linaro.org>
Signed-off-by: guping <guping_yewu@cmss.chinamobile.com>
---
hw/core/loader-fit.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/hw/core/loader-fit.c b/hw/core/loader-fit.c
index b7c7b3ba94..4a9a74cf3a 100644
--- a/hw/core/loader-fit.c
+++ b/hw/core/loader-fit.c
@@ -265,7 +265,7 @@ int load_fit(const struct fit_loader *ldr, const char *filename, void *opaque)
const char *def_cfg_name;
char path[FIT_LOADER_MAX_PATH];
int itb_size, configs, cfg_off, off;
- hwaddr kernel_end;
+ hwaddr kernel_end = 0;
int ret;
itb = load_device_tree(filename, &itb_size);
--
2.41.0.windows.1