From bbf508914df2375efb38bedb0527b87eeac697c5 Mon Sep 17 00:00:00 2001 From: Werner Zeh Date: Wed, 2 Mar 2016 17:45:53 +0100 Subject: cbfstool: Initialize contents of linux_params to 0 When linux is used as payload, the parameters to the kernel are build when cbfstool includes bzImage into the image. Since not all parameters are used, the unused will stay uninitialized. There is a chance, that the uninitialized parameters contain random values. That in turn can lead to early kernel panic. To avoid it, initialize all parameters with 0 at the beginning. The ones that are used will be set up as needed and the rest will contain 0 for sure. This way, kernel can deal with the provided parameter list the right way. Change-Id: Id081c24351ec80375255508378b5e1eba2a92e48 Signed-off-by: Werner Zeh Reviewed-on: https://review.coreboot.org/13874 Reviewed-by: Aaron Durbin Tested-by: build bot (Jenkins) Reviewed-by: Stefan Reinauer --- util/cbfstool/cbfs-payload-linux.c | 2 ++ 1 file changed, 2 insertions(+) (limited to 'util/cbfstool/cbfs-payload-linux.c') diff --git a/util/cbfstool/cbfs-payload-linux.c b/util/cbfstool/cbfs-payload-linux.c index 34b21e9054..79ee7eaa85 100644 --- a/util/cbfstool/cbfs-payload-linux.c +++ b/util/cbfstool/cbfs-payload-linux.c @@ -224,6 +224,8 @@ int parse_bzImage_to_payload(const struct buffer *input, /* Setup parameter block. Imitate FILO. */ struct linux_params params; + + memset(¶ms, 0, sizeof(struct linux_params)); params.mount_root_rdonly = hdr->root_flags; params.orig_root_dev = hdr->root_dev; /* Sensible video defaults. Might be overridden on runtime by coreboot tables. */ -- cgit v1.2.3