Skip to content

AF: GetOptimizationTier() == NativeCodeVersion::OptimizationTier0 #39604

Closed

Description

@jkotas

Repro:

  1. Build checked coreclr
  2. Unzip
    repro.zip to artifacts\bin\coreclr\Windows_NT.x64.Checked
  3. Run runme.bat

Result:

ssert failure(PID 23464 [0x00005ba8], Thread: 11528 [0x2d08]): pConfig->GetCodeVersion().GetOptimizationTier() == NativeCodeVersion::OptimizationTier0

CORECLR! MethodDesc::JitCompileCodeLocked + 0x3E7 (0x00007ffb`58d7a8bf)
CORECLR! MethodDesc::JitCompileCodeLockedEventWrapper + 0x318 (0x00007ffb`58d7ad74)
CORECLR! MethodDesc::JitCompileCode + 0x4F4 (0x00007ffb`58d7a3f8)
CORECLR! MethodDesc::PrepareILBasedCode + 0x24D (0x00007ffb`58d7c519)
CORECLR! MethodDesc::PrepareCode + 0xE9 (0x00007ffb`58d7c27d)
CORECLR! CodeVersionManager::PublishVersionableCodeIfNecessary + 0x359 (0x00007ffb`58c0b00d)
CORECLR! MethodDesc::DoPrestub + 0x926 (0x00007ffb`58d762f6)
CORECLR! PreStubWorker + 0x532 (0x00007ffb`58d7f0e2)
CORECLR! ThePreStub + 0x55 (0x00007ffb`5924aa45)
<no module>! <no symbol> + 0x0 (0x00007ffa`f9678a08)
    File: C:\runtime\src\coreclr\src\vm\prestub.cpp Line: 1066

Activity

  1. added and removed
    untriagedNew issue has not been triaged by the area owner
    on Jul 19, 2020
  2. added this to the 5.0.0 milestone on Jul 19, 2020
  3. jkotas commented on Jul 19, 2020

    @jkotas
    MemberAuthor

    The problem is that JIT lock does not guarantee that the method is JITed exactly once. The method can be JITed multiple times in some situations to break deadlocks. My repro is single threaded, there are also multithreaded versions of the same problem possible. I believe #39082 is blocked on the multithreaded version of this problem.

  4. jkotas commented on Jul 19, 2020

    @jkotas
    MemberAuthor

    @kouvel Could you please take a look?

  5. added
    tenet-reliabilityReliability/stability related issue (stress, load problems, etc.)
    on Jul 19, 2020
  6. kouvel commented on Jul 19, 2020

    @kouvel
    Contributor

    Will take a look

  7. kouvel commented on Jul 20, 2020

    @kouvel
    Contributor

    Thanks for the repro, worked great

  8. ghost locked as resolved and limited conversation to collaborators on Dec 8, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions