Configurable client meta-data (#662)
This provide a way to configure snmalloc to provide per object meta-data that is out of band. This can be used to provide different mitigations on top of snmalloc, such as storing memory tags in a compressed form, or provide a miracle pointer like feature. This also includes a couple of TSAN fixes as it wasn't fully on in CI.
This commit is contained in:
committed by
GitHub
parent
2dba088d24
commit
2a7eabef6c
5
.github/workflows/main.yml
vendored
5
.github/workflows/main.yml
vendored
@@ -224,15 +224,14 @@ jobs:
|
||||
matrix:
|
||||
# Build just release variant as Debug is too slow.
|
||||
build-type: [ Release ]
|
||||
os: ["ubuntu-latest", "ubuntu-20.04"]
|
||||
include:
|
||||
- os: "ubuntu-latest"
|
||||
continue-on-error: # Don't class as an error if this fails, until we have a more reliablity.
|
||||
variant: "libc++ (TSan + UBSan)"
|
||||
dependencies: "sudo apt install ninja-build"
|
||||
extra-cmake-flags: "-DCMAKE_CXX_COMPILER=clang++ -DCMAKE_CXX_FLAGS=-stdlib=\"libc++ -g\" -DSNMALLOC_SANITIZER=undefined,thread"
|
||||
# Also test specifically with clang-10 (on ubuntu-20.04)
|
||||
- os: "ubuntu-20.04"
|
||||
continue-on-error: # Don't class as an error if this fails, until we have a more reliablity.
|
||||
variant: "clang-10 libc++ (TSan + UBSan)"
|
||||
dependencies: "sudo apt install ninja-build"
|
||||
extra-cmake-flags: "-DCMAKE_CXX_COMPILER=clang++-10 -DCMAKE_CXX_FLAGS=-stdlib=\"libc++ -g\" -DSNMALLOC_SANITIZER=undefined,thread"
|
||||
@@ -452,7 +451,7 @@ jobs:
|
||||
git diff --exit-code
|
||||
- name: Run clang-tidy
|
||||
run: |
|
||||
clang-tidy-15 src/snmalloc/override/malloc.cc -header-filter="`pwd`/*" -warnings-as-errors='*' -export-fixes=tidy.fail -- -std=c++17 -mcx16 -DSNMALLOC_PLATFORM_HAS_GETENTROPY=0
|
||||
clang-tidy-15 src/snmalloc/override/malloc.cc -header-filter="`pwd`/*" -warnings-as-errors='*' -export-fixes=tidy.fail -- -std=c++17 -mcx16 -DSNMALLOC_PLATFORM_HAS_GETENTROPY=0 -Isrc
|
||||
if [ -f tidy.fail ] ; then
|
||||
cat tidy.fail
|
||||
exit 1
|
||||
|
||||
Reference in New Issue
Block a user