The module list should only be invalidated by dlopen and dlclose,
so the symbolizer should only re-generate it when we've hit one of those functions.
Details
Details
Diff Detail
Diff Detail
- Repository
- rL LLVM
Event Timeline
| lib/sanitizer_common/sanitizer_common_interceptors.inc | ||
|---|---|---|
| 5579 ↗ | (On Diff #113135) | The symbolizer process is launched by StartSymbolizerProcess(), which is only launched by SendCommand(), which is invoked by SymbolizePC() and and SymbolizeData(), so I believe this will be fine. I'll run a test and look for a symbolizer process before merging though. | 
| lib/sanitizer_common/sanitizer_symbolizer_libcdep.cc | ||
| 185 ↗ | (On Diff #113135) | Correct. | 
| lib/sanitizer_common/sanitizer_common_interceptors.inc | ||
|---|---|---|
| 5579 ↗ | (On Diff #113135) | Verified that this runs the interceptor but doesn't spawn a symbolizer process: #include <dlfcn.h>
int main() {
  dlopen("libc.so", RTLD_NOW);
  while (1) ;
  return 0;
} |