pkgsrc-WIP-changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
compiler-rt-netbsd: Update TODO.check and TODO.fuzzer
Module Name: pkgsrc-wip
Committed By: Kamil Rytarowski <n54%gmx.com@localhost>
Pushed By: kamil
Date: Wed May 9 03:53:40 2018 +0200
Changeset: c53e462f9d77350bea1f472ebba109e91eea6ffd
Modified Files:
compiler-rt-netbsd/TODO.check
compiler-rt-netbsd/TODO.fuzzer
Log Message:
compiler-rt-netbsd: Update TODO.check and TODO.fuzzer
check-fuzzer:
- Expected Passes : 87
+ Expected Passes : 99
Unsupported Tests : 8
- Unexpected Failures: 20
+ Unexpected Failures: 8
Explain current status with failing tests.
Sponsored by <The NetBSD Foundation>
To see a diff of this commit:
https://wip.pkgsrc.org/cgi-bin/gitweb.cgi?p=pkgsrc-wip.git;a=commitdiff;h=c53e462f9d77350bea1f472ebba109e91eea6ffd
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
diffstat:
compiler-rt-netbsd/TODO.check | 44 ++++++-----------------
compiler-rt-netbsd/TODO.fuzzer | 79 +++++++++++++++++++++++++-----------------
2 files changed, 58 insertions(+), 65 deletions(-)
diffs:
diff --git a/compiler-rt-netbsd/TODO.check b/compiler-rt-netbsd/TODO.check
index 0d93dfc25e..97a29fc072 100644
--- a/compiler-rt-netbsd/TODO.check
+++ b/compiler-rt-netbsd/TODO.check
@@ -239,64 +239,40 @@ Failing Tests (31):
$ check-fuzzer-default
********************
-Testing Time: 87.15s
+Testing Time: 94.86s
********************
-Failing Tests (20):
- LLVMFuzzer :: cxxstring.test
- LLVMFuzzer :: equivalence-signals.test
- LLVMFuzzer :: equivalence.test
- LLVMFuzzer :: fuzzer-oom.test
- LLVMFuzzer :: fuzzer-timeout.test
- LLVMFuzzer :: memcmp.test
- LLVMFuzzer :: memcmp64.test
+Failing Tests (8):
LLVMFuzzer :: merge-posix.test
- LLVMFuzzer :: recommended-dictionary.test
- LLVMFuzzer :: strcmp.test
LLVMFuzzer :: strncmp.test
- LLVMFuzzer :: strstr.test
LLVMFuzzer :: trace-malloc-threaded.test
LLVMFuzzer :: trace-malloc-unbalanced.test
LLVMFuzzer :: value-profile-cmp.test
LLVMFuzzer :: value-profile-load.test
- LLVMFuzzer :: value-profile-mem.test
LLVMFuzzer :: value-profile-set.test
- LLVMFuzzer :: value-profile-strcmp.test
- LLVMFuzzer :: value-profile-strncmp.test
+ LLVMFuzzer :: value-profile-switch.test
- Expected Passes : 87
+ Expected Passes : 99
Unsupported Tests : 8
- Unexpected Failures: 20
+ Unexpected Failures: 8
$ check-fuzzer
********************
-Testing Time: 101.74s
+Testing Time: 141.30s
********************
-Failing Tests (20):
- LLVMFuzzer :: cxxstring.test
- LLVMFuzzer :: equivalence-signals.test
- LLVMFuzzer :: equivalence.test
- LLVMFuzzer :: fuzzer-oom.test
- LLVMFuzzer :: fuzzer-timeout.test
- LLVMFuzzer :: memcmp.test
- LLVMFuzzer :: memcmp64.test
+Failing Tests (8):
LLVMFuzzer :: merge-posix.test
- LLVMFuzzer :: recommended-dictionary.test
- LLVMFuzzer :: strcmp.test
LLVMFuzzer :: strncmp.test
- LLVMFuzzer :: strstr.test
LLVMFuzzer :: trace-malloc-threaded.test
LLVMFuzzer :: trace-malloc-unbalanced.test
LLVMFuzzer :: value-profile-cmp.test
LLVMFuzzer :: value-profile-load.test
- LLVMFuzzer :: value-profile-mem.test
LLVMFuzzer :: value-profile-set.test
- LLVMFuzzer :: value-profile-strcmp.test
- LLVMFuzzer :: value-profile-strncmp.test
+ LLVMFuzzer :: value-profile-switch.test
- Expected Passes : 87
+ Expected Passes : 99
Unsupported Tests : 8
- Unexpected Failures: 20
+ Unexpected Failures: 8
$ check-fuzzer-unit
diff --git a/compiler-rt-netbsd/TODO.fuzzer b/compiler-rt-netbsd/TODO.fuzzer
index eaf3feb597..50f6b3f875 100644
--- a/compiler-rt-netbsd/TODO.fuzzer
+++ b/compiler-rt-netbsd/TODO.fuzzer
@@ -15,7 +15,6 @@ III. SanitizerCoverage (https://clang.llvm.org/docs/SanitizerCoverage.html)
We would like to cover them in llvm / clang tests (wherever applicable). At least covering
the netbsd--x86_64 target.
Examples of tests: clang/test/Driver/fsanitize-coverage.c clang/test/Driver/fuzzer.c
- It seams that these features aren't functional on NetBSD for unknown reason.
SanitizerCoverage is required for at least a part of the libfuzzer functionality.
sanitizers:
@@ -30,54 +29,72 @@ sanitizers:
$ make check-fuzzer
********************
-Testing Time: 328.39s
+Testing Time: 94.86s
********************
-Failing Tests (19):
- LLVMFuzzer :: cxxstring.test
- LLVMFuzzer :: fuzzer-leak.test
- LLVMFuzzer :: fuzzer-oom.test
- LLVMFuzzer :: fuzzer-timeout.test
- LLVMFuzzer :: memcmp.test
- LLVMFuzzer :: memcmp64.test
+Failing Tests (8):
LLVMFuzzer :: merge-posix.test
- LLVMFuzzer :: recommended-dictionary.test
- LLVMFuzzer :: strcmp.test
LLVMFuzzer :: strncmp.test
- LLVMFuzzer :: strstr.test
LLVMFuzzer :: trace-malloc-threaded.test
LLVMFuzzer :: trace-malloc-unbalanced.test
LLVMFuzzer :: value-profile-cmp.test
LLVMFuzzer :: value-profile-load.test
- LLVMFuzzer :: value-profile-mem.test
LLVMFuzzer :: value-profile-set.test
- LLVMFuzzer :: value-profile-strcmp.test
- LLVMFuzzer :: value-profile-strncmp.test
+ LLVMFuzzer :: value-profile-switch.test
- Expected Passes : 90
- Unsupported Tests : 6
- Unexpected Failures: 19
+ Expected Passes : 99
+ Unsupported Tests : 8
+ Unexpected Failures: 8
libFuzzer Failed cases (make check-fuzzer):
-I. kernel panic
- fuzzer-oom.test kills the kernel (panic due to lack of memory)
+I. hang of fuzzer-timeout.test
- workaround: kill it quickly or disable
+ kamil: It seems to be an issue with Thread-Local-Storage in the
+ SIGALARM signal handler... but it's not reproducible for me
+ out of the libfuzzer context.
-II. hangs
- fuzzer-timeout.test
- value-profile*
+ With the following workaround the tests passes:
+
+```
+diff --git a/lib/fuzzer/FuzzerLoop.cpp b/lib/fuzzer/FuzzerLoop.cpp
+index 6cc220d97..a67431c71 100644
+--- a/lib/fuzzer/FuzzerLoop.cpp
++++ b/lib/fuzzer/FuzzerLoop.cpp
+@@ -274,7 +274,7 @@ NO_SANITIZE_MEMORY
+ void Fuzzer::AlarmCallback() {
+ assert(Options.UnitTimeoutSec > 0);
+ // In Windows Alarm callback is executed by a different thread.
+-#if !LIBFUZZER_WINDOWS
++#if !LIBFUZZER_WINDOWS && !LIBFUZZER_NETBSD
+ if (!InFuzzingThread())
+ return;
+ #endif
+```
+
+ Under investigation.
+
+II. unknown hangs
+
+ LLVMFuzzer :: value-profile-cmp.test
+ LLVMFuzzer :: value-profile-load.test
+ LLVMFuzzer :: value-profile-set.test
+ LLVMFuzzer :: value-profile-switch.test
+ LLVMFuzzer :: strncmp.test
workaround: kill with pkill(1) or kill(1)
-III. SanitizerCoverage tests
- At least 'trace-cmp' ones don't work for unknown reason.
+ reason unknown
+
+III. SIGXFSZ handler bug?
+ LLVMFuzzer :: merge-posix.test
IV. Unknown
- the rest
+ LLVMFuzzer :: trace-malloc-threaded.test
+ LLVMFuzzer :: trace-malloc-unbalanced.test
TODO:
- - oom-killer, research a crasher and share with kernel developers
- - oom-killer, add a new ATF test to check oom-killer
- - upstream semaphore fixes to reviews.llvm.org
- - getrusage(2) fix pullup to -8 or find a workaround for 8.0
+ - research the remaining failures (assignee: kamil)
+ - oom-killer, research a crasher and share with kernel developers (assignee: plusun)
+ - oom-killer, add a new ATF test to check oom-killer (assignee: plusun)
+ - upstream semaphore fixes to reviews.llvm.org (assignee: plusun)
+ - getrusage(2) fix pullup to -8 or find a workaround for 8.0 (assignee: christos?)
Home |
Main Index |
Thread Index |
Old Index