This test builds a tree in a previously uninitialized buffer, then writes
the whole buffer out to a file to be used by other tests. Because part of
the buffer may be uninitialized this causes a valgrind error.
Pre-initializing the buffer would remove the error, however it would make
valgrind not notice any accesses to the uninitialized portion *before* the
write out, and those would be genuine errors.
So, instead we use a valgrind suppressions file - however it has a couple
of problems. First it unnecessarily lists the same call path twice.
Second, the call path is only right for some C library versions. Change
the second copy to cover possible path that occurs with a different glibc
version.
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
The sw_tree1 testcase has accumulated some valgrind errors, at least in
the "realloc" mode.
* It had both a realloc_fdt() and explicit xmalloc() for the initial
allocation which was redundant and caused errors.
* It doesn't make sense to call fdt_resize() until after we've created
the initial stub tree
* Alignment gaps inserted into the tree contain uninitialized data, which
trips an error when we write it out. We could zero the buffer, but that
would make it easier to miss real bugs, so we add suppressions for the
valgrind warnings instead.
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>