summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDonatas Abraitis <donatas@opensourcerouting.org>2024-06-20 08:08:30 +0300
committerGitHub <noreply@github.com>2024-06-20 08:08:30 +0300
commit550a3a819cf9afba29663a3caae903952dd742e4 (patch)
tree98b01570cfefb04934d577f191b53a780d346da2
parent994792bace81c43a010eb762fa5ee70b5e077df2 (diff)
parent248bf31a4f2880133c57e36a4a2bfbbdcf3d9a9a (diff)
Merge pull request #16243 from donaldsharp/ubsan_documentation
doc: Document the usage of --enable-undefined-sanitizer
-rw-r--r--doc/developer/workflow.rst10
1 files changed, 10 insertions, 0 deletions
diff --git a/doc/developer/workflow.rst b/doc/developer/workflow.rst
index f720f6279e..166c96da33 100644
--- a/doc/developer/workflow.rst
+++ b/doc/developer/workflow.rst
@@ -1306,6 +1306,16 @@ MemorySanitizer
to ``configure``.
+UndefinedSanitizer
+ Similar to AddressSanitizer, this tool provides runtime instrumentation for
+ detecting use of undefined behavior in C. Testing your own code with this
+ tool before submission is encouraged. You can enable it by passing::
+
+ --enable-undefined-sanitizer
+
+ to ``configure``. If you run FRR with this you will probably also have
+ to set ``sudo sysctl vm.mmap_rnd_bits=28``
+
All of the above tools are available in the Clang/LLVM toolchain since 3.4.
AddressSanitizer and ThreadSanitizer are available in recent versions of GCC,
but are no longer actively maintained. MemorySanitizer is not available in GCC.