Thread (1 message) 1 message, 1 author, 2023-01-20

Re: [PATCH] Makefile: suppress annotated leaks with certain ASan options

From: Junio C Hamano <hidden>
Date: 2023-01-20 19:41:40

Taylor Blau [off-list ref] writes:
However, it is possible to use the leak sanitizer without
`SANITIZE=leak`. This happens when building with `SANITIZE=address` and
enabling the leak sanitizer via the `ASAN_OPTIONS` variable (by
including the string "detect_leaks=1").
Yuck.  I cannot tell if this falls into "don't do it then if it
hurts" or pretty common thing people do that is worth helping.
Making it possible to rely on `UNLEAK()` when implicitly using the leak
checker via SANITIZE=address builds.
But as long as you did all the work, sure, why not ;-).
I found this while playing around with GitHub's ASan-enabled CI builds
for our internal fork following a merge with v2.38.3.

The check-chainlint recipe in t/Makefile started using "git diff" via
d00113ec34 (t/Makefile: apply chainlint.pl to existing self-tests,
2022-09-01), which triggered a leak in some of GitHub's custom code. I
was surprised when marking the variable with UNLEAK() didn't do the
trick, and ended up down this rabbit hole ;-).
Thanks.  Will queue.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help