lewisje / address-sanitizer

Automatically exported from code.google.com/p/address-sanitizer
0 stars 0 forks source link

Cache atos processes to make Darwin symbolication faster #196

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
Running asan_symbolize on Firefox for Mac is very slow.  This patch makes it 
fast by caching atos processes (each one takes 2 seconds to start up).

unbufferedLineConverter is something I wrote long ago for another symbolizer: 
https://bugzilla.mozilla.org/show_bug.cgi?id=429963#c8

Original issue reported on code.google.com by jruder...@gmail.com on 16 Jun 2013 at 8:52

Attachments:

GoogleCodeExporter commented 9 years ago
+glider
FYI currently I'm working on improving llvm-symbolizer 
(http://llvm.org/docs/CommandGuide/llvm-symbolizer.html) tool for Mac OS (e.g. 
currently it doesn't understand universal binaries). You can provide a path to 
llvm-symbolizer binary in LLVM_SYMBOLIZER_PATH env var for asan_symbolize.py 
script, or even provide it in ASAN_SYMBOLIZER_PATH before running asan-ified 
binary, so that the report are symbolized online.

Original comment by samso...@google.com on 17 Jun 2013 at 7:39

GoogleCodeExporter commented 9 years ago
Recently I've improved llvm-symbolizer tool for Mac, and now it should work for 
symbolizing ASan reports online, w/o helper asan_symbolize.py script. You 
should just set env var ASAN_SYMBOLIZER_PATH=/path/to/llvm-symbolizer. ASan 
tests on Mac are now run in this way.

Lowering the priority for this issue.

Original comment by samso...@google.com on 30 Jun 2013 at 2:24

GoogleCodeExporter commented 9 years ago
Thanks Alexey!!  llvm-symbolizer is much much faster than atos, and in the last 
week or so it has caught up on the features I care about (working with both 
Firefox and system libraries, and demangling C++ names).

Do you recommend using llvm-symbolizer instead of asan_symbolize.py on Linux 
too?

Original comment by jruder...@gmail.com on 30 Jun 2013 at 6:51

GoogleCodeExporter commented 9 years ago
Yes, llvm-symbolizer should work on Linux as well.

Original comment by samso...@google.com on 1 Jul 2013 at 7:42

GoogleCodeExporter commented 9 years ago
Jesse, I've changed the style of your patch a bit and committed it as r185325.
Thank you!

Original comment by ramosian.glider@gmail.com on 1 Jul 2013 at 10:54

GoogleCodeExporter commented 9 years ago
Adding Project:AddressSanitizer as part of GitHub migration.

Original comment by ramosian.glider@gmail.com on 30 Jul 2015 at 9:13