Documentation, sanitizers, and PTL submodule (#71)

* Update scripts/thread-sanitizer-suppr.txt

- ignore data race occasionally triggered by libamdhip64.so

* Update external/CMakeLists.txt

- configure PTL to use locks in task queues

* Update PTL submodule

- tweal to task queues to prevent data race from std::list next pointer

* Add scripts/setup-sanitizer-env.sh

- bash script that exports the {ASAN,LSAN,TSAN}_OPTIONS used by run-ci.py

* Update include/rocprofiler (doxygen)

- fix doxygen grouping

* Update docs workflow

- change concurrency group to be specific to workflow + ref
  - this prevents separate PRs triggering this workflow from cancelling each other
Cette révision appartient à :
Jonathan R. Madsen
2023-09-20 23:14:25 -05:00
révisé par GitHub
Parent d3eaacd610
révision 5e4e7b41f1
22 fichiers modifiés avec 171 ajouts et 92 suppressions
+38
Voir le fichier
@@ -0,0 +1,38 @@
#!/bin/bash -e
#
# This file will export the same environment variables for running sanitizers as run-ci.py
# This file is useful to set the suppressions files
#
# Example usage:
#
# source ./source/scripts/setup-sanitizer-env.sh
#
SUPPR_DIR=$(cd $(dirname ${BASH_SOURCE[0]}) &> /dev/null && pwd)
for i in $(seq 20 -1 8)
do
set +e
SYMBOLIZER=$(which llvm-symbolizer-${i})
set -e
if [ -n "${SYMBOLIZER}" ]; then
: ${EXTERNAL_SYMBOLIZER_PATH:="${SYMBOLIZER}"}
fi
done
if [ -n "${EXTERNAL_SYMBOLIZER_PATH}" ]; then
EXTERNAL_SYMBOLIZER=" external_symbolizer_path=${EXTERNAL_SYMBOLIZER_PATH}"
fi
: ${ASAN_OPTIONS="detect_leaks=0 use_sigaltstack=0 suppressions=${SUPPR_DIR}/address-sanitizer-suppr.txt"}
: ${LSAN_OPTIONS="suppressions=${SUPPR_DIR}/leak-sanitizer-suppr.txt"}
: ${TSAN_OPTIONS="history_size=5 second_deadlock_stack=1 suppressions=${SUPPR_DIR}/thread-sanitizer-suppr.txt${EXTERNAL_SYMBOLIZER}"}
export ASAN_OPTIONS
export LSAN_OPTIONS
export TSAN_OPTIONS
echo "ASAN_OPTIONS=\"${ASAN_OPTIONS}\""
echo "LSAN_OPTIONS=\"${LSAN_OPTIONS}\""
echo "TSAN_OPTIONS=\"${TSAN_OPTIONS}\""
+3
Voir le fichier
@@ -5,6 +5,9 @@
# leaked thread
thread:libhsa-runtime64.so
# data race in operator delete(void*)
race_top:libamdhip64.so
# unlock of an unlocked mutex (or by a wrong thread)
mutex:librocm_smi64.so