* [RFC PATCH] hw/core: ensure kernel_end never gets used undefined
@ 2024-07-04 12:49 Alex Bennée
2024-07-05 9:53 ` Aleksandar Rikalo
0 siblings, 1 reply; 2+ messages in thread
From: Alex Bennée @ 2024-07-04 12:49 UTC (permalink / raw)
To: qemu-devel; +Cc: Alex Bennée, Paul Burton, Aleksandar Rikalo
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;
| ^~~~~~~~~~
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
---
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 9f20007dbb..7ccc9d5fbc 100644
--- a/hw/core/loader-fit.c
+++ b/hw/core/loader-fit.c
@@ -267,7 +267,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.39.2
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [RFC PATCH] hw/core: ensure kernel_end never gets used undefined
2024-07-04 12:49 [RFC PATCH] hw/core: ensure kernel_end never gets used undefined Alex Bennée
@ 2024-07-05 9:53 ` Aleksandar Rikalo
0 siblings, 0 replies; 2+ messages in thread
From: Aleksandar Rikalo @ 2024-07-05 9:53 UTC (permalink / raw)
To: Alex Bennée; +Cc: qemu-devel, Paul Burton
On Thu, Jul 4, 2024 at 2:49 PM Alex Bennée <alex.bennee@linaro.org> wrote:
>
> 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;
> | ^~~~~~~~~~
>
> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
> ---
> 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 9f20007dbb..7ccc9d5fbc 100644
> --- a/hw/core/loader-fit.c
> +++ b/hw/core/loader-fit.c
> @@ -267,7 +267,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.39.2
>
Reviewed-by: Aleksandar Rikalo <arikalo@gmail.com>
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2024-07-05 9:54 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-07-04 12:49 [RFC PATCH] hw/core: ensure kernel_end never gets used undefined Alex Bennée
2024-07-05 9:53 ` Aleksandar Rikalo
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).