-
Notifications
You must be signed in to change notification settings - Fork 562
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
static client issues on Windows #2040
Comments
I added a setup;detach test to static_noclient and it hits this
|
Adds support for calling dr_app_setup();dr_app_stop_and_cleanup() with no start in between. This is useful to use DR as a decode/encode library when it's statically linked and also used for instrumentation, as that setup precludes using drdecodelib, which relies on redirecting heap allocation via name redirection. Adds a test to api.static_noclient. Unfortunately this hits #2040 on Windows and we disable it there. Issue: #975
Adding threads to the tool.drcacheoff.burst_replaceall test hits Windows issues that are likely coming from static client isolation problems. First, 3 threads are not fully taken over on attach. The TAKEOVER lines in the log shows their context being set: but they are never Next, we have a crash on detach:
If I move the thread spawn and cleanup inside the DR-controlled period it
|
Adds drmemtrace_replace_file_ex_ops() with an expanded file opening function which takes in the thread id and window id, to better support the external file opener with delayed opens due to nop mode and windows. The new function takes in a struct to make it easier to extend further in the future. Adds a test of the function to burst_replaceall. Adds additional threads to the test and checks that the tid for each thread was seen, but disables that part on Windows due to #2040. Issue: #2039
Split from #975
The burst-threads test for #1729 hits this assert on takeover:
This may be related to the private loader being disabled? Or to #2034 mixing threads around?
The text was updated successfully, but these errors were encountered: