Re: [PATCH 3/5] tests: Make realloc_fdt() really allocate *fdt

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]



On 4 March 2017 at 06:26, Nicolas Iooss <nicolas.iooss_linux@xxxxxxx> wrote:
> This bug has been found by using clang Static Analyzer: it reported that
> the value stored to fdt was never read.
>
> Signed-off-by: Nicolas Iooss <nicolas.iooss_linux@xxxxxxx>
> ---
>  tests/sw_tree1.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)

Reviewed-by: Simon Glass <sjg@xxxxxxxxxxxx>

I suggest changing the code in main() so it starts with a 0 size. Then
the test would catch this problem.

>
> diff --git a/tests/sw_tree1.c b/tests/sw_tree1.c
> index 6d4c53102967..4887dc3e1172 100644
> --- a/tests/sw_tree1.c
> +++ b/tests/sw_tree1.c
> @@ -42,14 +42,14 @@ static void realloc_fdt(void **fdt, size_t *size, bool created)
>         switch (alloc_mode) {
>         case FIXED:
>                 if (!(*fdt))
> -                       fdt = xmalloc(*size);
> +                       *fdt = xmalloc(*size);
>                 else
>                         FAIL("Ran out of space");
>                 return;
>
>         case RESIZE:
>                 if (!(*fdt)) {
> -                       fdt = xmalloc(SPACE);
> +                       *fdt = xmalloc(SPACE);
>                 } else if (*size < SPACE) {
>                         *size += 1;
>                         fdt_resize(*fdt, *fdt, *size);
> --
> 2.11.1
>
> --
> To unsubscribe from this list: send the line "unsubscribe devicetree-compiler" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe devicetree-compiler" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Device Tree]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]

  Powered by Linux