Skip to content

Commit

Permalink
i#2498 init failures: Ignore privlib init failures (#2515)
Browse files Browse the repository at this point in the history
Updates DR to 51b152fa2 extends the private loader bcrypt.dll entry
failure being ignored to ignore all private library entry failures. We
have had multiple cases of initializers failing without fatal
consequences, and given that we do not have resources to track down
every detail it is best to note the failure and move on. We have seen
Dr. Memory in particular fail on newer Windows versions and in some
cases ignoring that failure lets the tool continue and succeed, as only
a small piece of the private library is needed (generally pulled in as a
chain of dependences from dbghelp.dll which is used for symbol
information). The private loader on Windows is considered best-effort at
this point.

Issue: #2498
  • Loading branch information
derekbruening authored Sep 23, 2024
1 parent 9a569cb commit 1aea781
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion dynamorio
Submodule dynamorio updated 62 files
+20 −10 .github/workflows/ci-package.yml
+1 −1 api/docs/API.doxy
+1 −1 api/docs/CMakeLists.txt
+0 −4 api/docs/intro.dox
+12 −0 api/docs/release.dox
+0 −1 api/docs/transp.dox
+2 −2 api/docs/tutorial.dox
+4 −4 api/docs/tutorial_secdev16.dox
+17 −4 clients/drcachesim/CMakeLists.txt
+17 −5 clients/drcachesim/analyzer_multi.cpp
+9 −0 clients/drcachesim/common/memtrace_stream.h
+104 −0 clients/drcachesim/common/mutex_dbg_owned.cpp
+81 −0 clients/drcachesim/common/mutex_dbg_owned.h
+60 −14 clients/drcachesim/common/options.cpp
+7 −0 clients/drcachesim/common/options.h
+7 −0 clients/drcachesim/common/trace_entry.h
+244 −105 clients/drcachesim/docs/drcachesim.dox.in
+162 −0 clients/drcachesim/reader/v2p_reader.cpp
+85 −0 clients/drcachesim/reader/v2p_reader.h
+9 −0 clients/drcachesim/scheduler/flexible_queue.h
+845 −282 clients/drcachesim/scheduler/scheduler.cpp
+282 −140 clients/drcachesim/scheduler/scheduler.h
+48 −16 clients/drcachesim/simulator/cache_simulator.cpp
+9 −2 clients/drcachesim/simulator/cache_simulator.h
+3 −2 clients/drcachesim/simulator/caching_device_stats.cpp
+0 −2 clients/drcachesim/simulator/prefetcher.cpp
+8 −1 clients/drcachesim/simulator/prefetcher.h
+26 −0 clients/drcachesim/simulator/simulator.cpp
+11 −0 clients/drcachesim/simulator/simulator.h
+40 −1 clients/drcachesim/simulator/tlb_simulator.cpp
+2 −0 clients/drcachesim/simulator/tlb_simulator.h
+2 −0 clients/drcachesim/simulator/tlb_simulator_create.h
+2 −2 clients/drcachesim/tests/config_reader_unit_test.cpp
+3 −1 clients/drcachesim/tests/config_reader_unit_test.h
+96 −1 clients/drcachesim/tests/drcachesim_unit_tests.cpp
+50 −0 clients/drcachesim/tests/drmemtrace.threadsig.aarch64.raw/v2p.textproto
+3 −0 clients/drcachesim/tests/instr_intervals_example.csv
+17 −0 clients/drcachesim/tests/irregular-windows-simple.templatex
+3 −1 clients/drcachesim/tests/memref_gen.h
+91 −0 clients/drcachesim/tests/offline-tlb_simulator_v2p.templatex
+6 −3 clients/drcachesim/tests/scheduler_launcher.cpp
+606 −244 clients/drcachesim/tests/scheduler_unit_tests.cpp
+190 −0 clients/drcachesim/tests/tlb_simulator_unit_test.cpp
+47 −0 clients/drcachesim/tests/tlb_simulator_unit_test.h
+1 −1 clients/drcachesim/tests/trace_interval_analysis_unit_tests.cpp
+26 −0 clients/drcachesim/tests/v2p_example.textproto
+123 −0 clients/drcachesim/tests/v2p_reader_unit_test.cpp
+47 −0 clients/drcachesim/tests/v2p_reader_unit_test.h
+3 −3 clients/drcachesim/tools/invariant_checker.cpp
+243 −10 clients/drcachesim/tracer/instr_counter.cpp
+15 −0 clients/drcachesim/tracer/instr_counter.h
+12 −5 clients/drcachesim/tracer/output.cpp
+7 −5 clients/drcachesim/tracer/tracer.cpp
+3 −1 clients/drcachesim/tracer/tracer.h
+2 −0 core/loader_shared.c
+3 −1 core/module_shared.h
+3 −3 core/unix/loader.c
+12 −4 core/unix/module_elf.c
+3 −2 core/unix/os.c
+19 −18 core/win32/loader.c
+38 −0 suite/tests/CMakeLists.txt
+56 −0 suite/tests/client-interface/tls.dll.cpp

0 comments on commit 1aea781

Please sign in to comment.