-
Notifications
You must be signed in to change notification settings - Fork 4.9k
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
tracing/eventpipe/eventsvalidation tests failing with AF: codeLength > 0 #69375
Comments
I couldn't figure out the best area label to add to this issue. If you have write-permissions please help me learn by adding exactly one area label. |
More info from the dump.
|
The rundown is trying to access GCInfo of a dynamic method. The dynamic method that it is trying to access appears to be destroyed already and its memory was overwritten that leads to the assert. The finalizer thread is actively running and destroying other dynamic methods. |
This appears to be a race condition in the rundown code. |
You should be able to hit this crash more reliably by handcrafting a test that creates and destroys a lot of dynamic methods. |
Related to 6f563b3? |
Has there only been one instance of this failing? If this is indeed a race condition in the tracing code, I would have assumed we would have seen this issue for a long time. Rundown logic hasn't changed significantly in a long time. I would assert that something else changed around the tracing code. I'll take a look at the PR Tom mentioned and see if I spot anything. |
Yes, it is. The heap enumeration and code memory allocation are all protected by
|
Thanks for the clarification! Presumably this race has been around for a long time then. We'll take a look at adjusting the tracing code to handle this case. |
Failed again in: runtime-coreclr outerloop 20220523.2 Failed test:
Error message:
|
@davmason ptal |
This test has 1 failure in the last 2 weeks, removing the blocking-ci tag |
Hit in #69360 (comment):
Based on the investigation below, this assert is just one of the possible failure modes of this test due this bug. Any crash or AF with
ETW::MethodLog::SendEventsForJitMethods
on stack is potentially caused by this bug.The text was updated successfully, but these errors were encountered: