This series adds support for running valgrind against U-Boot's internal malloc. This allows for much more useful reports to be generated.
Some example output of valgrind run against u-boot/master with this branch applied may be found at [1]. Note that valgrind gives up around acpi. This feature still needs a lot of work on suppressions/hints to filter out the noise properly. [1] https://gist.githubusercontent.com/Forty-Bot/199bf06f9cdd6871e54f8f484c16e111/raw/2a2f99108eef84b48e27a54332f3f71f4e2e5342/gistfile1.txt Changes in v3: - Fix some warnings by converting some macros to use VALGRIND_DO_CLIENT_REQUEST_STMT - Fix an additional rEALLOc branch missing VALGRIND_RESIZEINPLACE_BLOCK Changes in v2: - Fix one branch of rEALLOc missing a VALGRIND_*_BLOCK call - Add some additional suppressions for cALLOc and rEALLOc - Simplify calloc clearing logic - Drop incorrect sbrk patch Sean Anderson (3): Add valgrind headers to U-Boot malloc: Annotate allocator for valgrind doc: sandbox: Document how to run sandbox with valgrind Kconfig | 14 + Licenses/README | 1 + Licenses/bzip2-1.0.6.txt | 30 + common/dlmalloc.c | 31 +- common/malloc_simple.c | 10 + doc/arch/sandbox.rst | 14 +- include/malloc.h | 4 + include/valgrind/memcheck.h | 251 ++ include/valgrind/valgrind.h | 7106 +++++++++++++++++++++++++++++++++++ scripts/u-boot.supp | 53 + 10 files changed, 7509 insertions(+), 5 deletions(-) create mode 100644 Licenses/bzip2-1.0.6.txt create mode 100644 include/valgrind/memcheck.h create mode 100644 include/valgrind/valgrind.h create mode 100644 scripts/u-boot.supp -- 2.35.1