Don't run dyndb and dlzexternal if running TSAN as

the dlopen flags being used are incompatible with TSAN.
This commit is contained in:
Mark Andrews
2020-08-28 16:31:35 +10:00
parent bbece7389e
commit 86316ed29d
4 changed files with 52 additions and 0 deletions

View File

@@ -0,0 +1,19 @@
#!/bin/sh
#
# Copyright (C) Internet Systems Consortium, Inc. ("ISC")
#
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
# See the COPYRIGHT file distributed with this work for additional
# information regarding copyright ownership.
. ../conf.sh
$FEATURETEST --tsan && {
echo_i "TSAN - skipping dlzexternal test"
exit 255
}
exit 0

View File

@@ -0,0 +1,17 @@
# Copyright (C) Internet Systems Consortium, Inc. ("ISC")
#
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
# See the COPYRIGHT file distributed with this work for additional
# information regarding copyright ownership.
. ../conf.sh
$FEATURETEST --tsan && {
echo_i "TSAN - skipping dyndb test"
exit 255
}
exit 0

View File

@@ -43,6 +43,7 @@ usage(void) {
fprintf(stderr, "\t--have-geoip2\n");
fprintf(stderr, "\t--have-libxml2\n");
fprintf(stderr, "\t--ipv6only=no\n");
fprintf(stderr, "\t--tsan\n");
fprintf(stderr, "\t--with-dlz-filesystem\n");
fprintf(stderr, "\t--with-idn\n");
fprintf(stderr, "\t--with-lmdb\n");
@@ -125,6 +126,19 @@ main(int argc, char **argv) {
#endif /* ifdef HAVE_LIBXML2 */
}
if (strcmp(argv[1], "--tsan") == 0) {
#if defined(__has_feature)
#if __has_feature(thread_sanitizer)
return (0);
#endif
#endif
#if __SANITIZE_THREAD__
return (0);
#else
return (1);
#endif
}
if (strcmp(argv[1], "--ipv6only=no") == 0) {
#ifdef WIN32
return (0);

View File

@@ -326,6 +326,7 @@
./bin/tests/system/dlzexternal/clean.sh SH 2010,2012,2014,2015,2016,2018,2019,2020
./bin/tests/system/dlzexternal/driver/driver.c C 2011,2012,2013,2014,2015,2016,2017,2018,2019,2020
./bin/tests/system/dlzexternal/driver/driver.h C 2011,2016,2018,2019,2020
./bin/tests/system/dlzexternal/prereq.sh SH 2020
./bin/tests/system/dlzexternal/setup.sh SH 2010,2012,2014,2016,2017,2018,2019,2020
./bin/tests/system/dlzexternal/tests.sh SH 2010,2011,2012,2013,2014,2015,2016,2018,2019,2020
./bin/tests/system/dns64/clean.sh SH 2010,2012,2014,2015,2016,2018,2019,2020
@@ -400,6 +401,7 @@
./bin/tests/system/dyndb/driver/util.h X 2015,2018,2019,2020
./bin/tests/system/dyndb/driver/zone.c X 2015,2018,2019,2020
./bin/tests/system/dyndb/driver/zone.h X 2015,2018,2019,2020
./bin/tests/system/dyndb/prereq.sh SH 2020
./bin/tests/system/dyndb/setup.sh SH 2018,2019,2020
./bin/tests/system/dyndb/tests.sh SH 2015,2016,2018,2019,2020
./bin/tests/system/ecdsa/clean.sh SH 2012,2014,2016,2018,2019,2020