[PATCH] D63841: [GWP-ASan] Add generic unwinders and structure backtrace output.

Evgenii Stepanov via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Jun 28 12:33:09 PDT 2019


eugenis added inline comments.


================
Comment at: compiler-rt/lib/gwp_asan/CMakeLists.txt:140
+      PARENT_TARGET gwp_asan)
+  endforeach()
 endif()
----------------
hctim wrote:
> eugenis wrote:
> > hctim wrote:
> > > eugenis wrote:
> > > > That's a lot of libraries. We need at most two - one standalone implementation for testing, and one "plugin" for the actual users.
> > > The only problem here is that I'd expect people to mix-and-match these.
> > > 
> > > For example, Scudo is currently using the options parser, and the libc unwinder. Soon enough they'll be using the libc unwinder and providing their own options parser. I think we need to keep them decoupled to allow people to pick what they need (hence the `optional` dir).
> > Right, but they don't need libclang_rt.* libraries. Those are for the driver to link with user binaries. Scudo would link RTGwpAsanxxxx statically.
> > 
> Ah, I see. Have removed the libclang_rt varaints for most of these and made a unified sanitizer_common-based support library.
The library should be used in tests. Add at least a sanity test for stack trace printing.


================
Comment at: compiler-rt/lib/gwp_asan/guarded_pool_allocator.cpp:364
   case Error::USE_AFTER_FREE:
-    Printf("Use after free occurred when accessing memory at: 0x%zx\n",
-           AccessPtr);
+    Printf("Use after free ");
     break;
----------------
Let's avoid printing incomplete lines. Android logcat, for example, adds a line break after every print.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D63841/new/

https://reviews.llvm.org/D63841





More information about the llvm-commits mailing list