gperftools/cmake
Aliaksey Kandratsenka e78238d94d reworked heap leak checker for more portability
In most practical terms, this expands "official" heap leak checker
support to Linux/arm64 and Linux/riscv (mips-en and legacy arm are
likely to work & pass tests too now).

The code is now explicitly Linux-only, without trying to pretend
otherwise. Main goal of this change is to finally amputate
linux_syscall_support.h, which we historically had trouble maintaining
well. Biggest challenge was around thread listing facility which uses
clone (ptrace explicitly fails between threads) and that causes
difficulties around parent and child tasks sharing
errno. linux_syscall_support stuff had special feature to "redirect"
errno accesses. But it caused us for more trouble. We switched to
regular syscalls, and errno stamping avoidance is now simply via
careful programming.

A number of other cleanups is made (such us thread finding codes in
procfs which clearly was built for some ages old and odd kernels).

sem_post/sem_wait synchronization was previously potentially prone to
deadlock (if parent died at bad time). We now use pipe pair for this
synchronization and it is fully robust.
2023-07-02 22:30:00 -04:00
..
config.h.in reworked heap leak checker for more portability 2023-07-02 22:30:00 -04:00
DefineTargetVariables.cmake prefer backtrace() on OSX 2021-02-28 17:52:17 -08:00
FindObjcopyWithWeaken.cmake Update cmake 2020-12-19 18:52:40 -08:00
PCFromUContext.cmake synchronize ucontext-from-pc tests autoconf -> cmake 2023-06-21 10:25:14 -04:00
pkgconfig.pc Update cmake 2020-12-19 18:52:40 -08:00
tcmalloc.h.in Update cmake 2020-12-19 18:52:40 -08:00