Skip to content

Commit c79411a

Browse files
authored
Merge pull request #2502 from facebook/ubsanfix
fix ubsan test errors
2 parents f7cffb5 + f2c0312 commit c79411a

File tree

2 files changed

+6
-7
lines changed

2 files changed

+6
-7
lines changed

.github/workflows/generic-dev.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@ jobs:
8181
make libc6install
8282
CFLAGS="-Werror -m32" make -j all32
8383
make clean
84-
make -j uasan-test-zstd32
84+
make -j uasan-test-zstd32 V=1
8585
8686
clang-msan-testzstd:
8787
runs-on: ubuntu-latest

Makefile

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -286,12 +286,11 @@ uasanregressiontest:
286286
msanregressiontest:
287287
$(MAKE) -C $(FUZZDIR) regressiontest CC=clang CXX=clang++ CFLAGS="-O3 -fsanitize=memory" CXXFLAGS="-O3 -fsanitize=memory"
288288

289-
# run UBsan with -fsanitize-recover=signed-integer-overflow
290-
# due to a bug in UBsan when doing pointer subtraction
291-
# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63303
289+
# run UBsan with -fsanitize-recover=pointer-overflow
290+
# this only works with recent compilers such as gcc 8+
292291

293292
usan: clean
294-
$(MAKE) test CC=clang MOREFLAGS="-g -fno-sanitize-recover=all -fsanitize-recover=signed-integer-overflow -fsanitize=undefined -Werror"
293+
$(MAKE) test CC=clang MOREFLAGS="-g -fno-sanitize-recover=all -fsanitize-recover=pointer-overflow -fsanitize=undefined -Werror"
295294

296295
asan: clean
297296
$(MAKE) test CC=clang MOREFLAGS="-g -fsanitize=address -Werror"
@@ -309,10 +308,10 @@ asan32: clean
309308
$(MAKE) -C $(TESTDIR) test32 CC=clang MOREFLAGS="-g -fsanitize=address"
310309

311310
uasan: clean
312-
$(MAKE) test CC=clang MOREFLAGS="-g -fno-sanitize-recover=all -fsanitize-recover=signed-integer-overflow -fsanitize=address,undefined -Werror"
311+
$(MAKE) test CC=clang MOREFLAGS="-g -fno-sanitize-recover=all -fsanitize-recover=pointer-overflow -fsanitize=address,undefined -Werror"
313312

314313
uasan-%: clean
315-
LDFLAGS=-fuse-ld=gold MOREFLAGS="-g -fno-sanitize-recover=all -fsanitize-recover=signed-integer-overflow -fsanitize=address,undefined -Werror" $(MAKE) -C $(TESTDIR) $*
314+
LDFLAGS=-fuse-ld=gold MOREFLAGS="-g -fno-sanitize-recover=all -fsanitize-recover=pointer-overflow -fsanitize=address,undefined -Werror" $(MAKE) -C $(TESTDIR) $*
316315

317316
tsan-%: clean
318317
LDFLAGS=-fuse-ld=gold MOREFLAGS="-g -fno-sanitize-recover=all -fsanitize=thread -Werror" $(MAKE) -C $(TESTDIR) $* FUZZER_FLAGS=--no-big-tests

0 commit comments

Comments
 (0)