Module Name: src
Committed By: kamil
Date: Tue Jun 26 17:13:41 UTC 2018
Added Files:
src/doc: TODO.sanitizers
Log Message:
Add TODO.sanitizer
Note short term, long term and unspecified tasks with sanitizers.
The long term goals are planned to be started after emptying TODO.ptrace.
To generate a diff of this commit:
cvs rdiff -u -r0 -r1.1 src/doc/TODO.sanitizers
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Added files:
Index: src/doc/TODO.sanitizers
diff -u /dev/null src/doc/TODO.sanitizers:1.1
--- /dev/null Tue Jun 26 17:13:41 2018
+++ src/doc/TODO.sanitizers Tue Jun 26 17:13:41 2018
@@ -0,0 +1,55 @@
+Sanitizer and related tasks.
+
+Short term:
+ - upgrade base Clang/LLVM, libcxx, libcxxabi to at least 7svn (HEAD)
+ - compiler-rt import and integration with base
+ - merge TSan, MSan and libFuzzer ATF tests
+ - prepare MKSANITIZER readme
+ - kernel-asan port
+ - kernel-ubsan port
+ - switch syscall(2)/__syscall(2) to libc calls
+ - upstream local patches, mostly to compiler-rt
+ - develop fts(3) interceptors (MSan, for ls(1), find(1), mtree(8)
+ - investigate and address the libcxx failing tests on NetBSD
+ - expr(1) fixes for issue detected with libFuzzer, addition of new ATF tests
+ - no-ASLR boot.cfg option, required for MKSANITIZER
+
+Long term:
+ - FILE and DIR sanitization (needed by at least: ESan, MSan)
+ - add missing interceptors (mostly MSan-centric)
+ - improve the framework for ioctl(2) database and handle special cases when a
+ part of a struct can be uninitialized and passed to the kernel (MSan)
+ - port or finish the port of:
+ * ESan,
+ * LSan,
+ * XRay,
+ * shadowcallstack,
+ * cfi,
+ * scudo,
+ * profile,
+ * DFSan.
+ - finish the research of a new syscall for StopTheWorld() operation
+ ptrace(2) style for self-introspection and debugging (LSan)
+ - port HWASan -- aarch64 specific, needs hardware or emulator
+ - make MKSANITIZER usable with any supported by a compiler combination of
+ sanitizers
+ - detect and fix more bugs in basesystem
+ - pkgsrc integration with sanitizers and MKSANITIER (PKGSANITIER?)
+ - port what possible to !amd64
+ - fixes with the signal code
+ - attach a NetBSD buildbot testing build of compiler-rt and executing tests
+ - make compiler-rt buildable with GCC
+ - finish the support of float128 for Clang/LLVM/libstdc++/libgcc
+ - lld port to NetBSD (GNU ld(1) is too slow for serious LLVM development)
+ - merge of the libFuzzer integration with the basesystem
+ - oom-killer ATF tests and fixes
+ - uvm_map.c E2BIG workaround or limit raise (1MB -> 10MB?), needed by libFuzzer
+
+Unspecified:
+ - kernel-tsan? upstream development is stalled with patches for Linux 4.2
+ https://github.com/google/ktsan
+ - kernek-msan? in development for Linux
+ https://github.com/google/kmsan
+ - kernel-safestack? implemented in Fuchsia/Magenta
+ - kernel coverage (KCOV?)
+ - syzkaller port