dotnet / runtime

.NET is a cross-platform runtime for cloud, mobile, desktop, and IoT apps.
https://docs.microsoft.com/dotnet/core/
MIT License
15.39k stars 4.75k forks source link

Assert failure(PID 506060 [0x0007b8cc], Thread: 506072 [0x7b8d8]): m_pBuffer <= pAddress && m_pLimit > pAddress #12189

Closed cshung closed 4 years ago

cshung commented 5 years ago

Symptom:

Assert failure(PID 506060 [0x0007b8cc], Thread: 506072 [0x7b8d8]): m_pBuffer <= pAddress && m_pLimit > pAddress

CORECLR! EventPipeBuffer::GetNextAlignedAddress + 0x2E (0x0ffc680e)
CORECLR! EventPipeBuffer::GetNext + 0x1EC (0x0ffc66ec)
CORECLR! EventPipeBuffer::PeekNext + 0x123 (0x0ffc6983)
CORECLR! EventPipeBufferList::PeekNextEvent + 0x167 (0x0fe6eba7)
CORECLR! EventPipeBufferManager::WriteAllBuffersToFile + 0x229 (0x0fe6f149)
CORECLR! EventPipe::Disable + 0x221 (0x0faec3e1)
CORECLR! EventPipeInternal::Disable + 0x17A (0x0faec6da)
<no module>! <no symbol> + 0x0 (0x07b93003)
SYSTEM.PRIVATE.CORELIB! <no symbol> + 0x0 (0x578184f3)
CORECLR! CallDescrWorkerInternal + 0x34 (0x0f7a87f1)
    File: c:\dev\coreclr\src\vm\eventpipebuffer.h Line: 82
    Image: C:\Dev\coreclr\bin\tests\Windows_NT.x86.Debug\Tests\Core_Root\CoreRun.exe

Repro (x86, debug)

Run tests\src\tracing\tracevalidation\tracelogging\tracelogging.csproj after applying the fix https://github.com/dotnet/coreclr/pull/23038 for https://github.com/dotnet/coreclr/issues/23037

cshung commented 5 years ago

Fixed with commit https://github.com/dotnet/coreclr/commit/ffcdabd7735d6860dec361d1efde20be4cf89b8f