- pci-host: designware: Limit value range of iATU viewport register - hmat acpi: Fix out of bounds access due to missing use of indirection - migration: Skip only empty block devices - aspeed/hace: Initialize g_autofree pointer - hw/net/vmxnet3: Fix guest-triggerable assert() - qxl: don't assert() if device isn't yet initialized - Avoid unaligned fetch in ladr_match() - linux-user: Fix waitid return of siginfo_t and rusage - hw/net/lan9118: Replace magic '2048' value by MIL_TXFIFO_SIZE definition - stdvga: fix screen blanking - virtio-net: drop too short packets early - ebpf: replace deprecated bpf_program__set_socket_filter - vhsot-user: only read reply of SET_LOG_BASE from vq 0 - cpu: add Tengyun S5000C cpu support - hw/virtio: Fix obtain the buffer id from the last descriptor - hw/core: ensure kernel_end never gets used undefined Signed-off-by: Jiabo Feng <fengjiabo1@huawei.com> (cherry picked from commit 1f9e476e96edb07e34e0133a312f478ddab4b6ff)
52 lines
2.0 KiB
Diff
52 lines
2.0 KiB
Diff
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
|
||
|