Page 1 of 1

Freeze detection 64bit

Posted: Thu Dec 12, 2019 4:07 pm
by SSchaefer
I have noticed multiple times that the freeze detection (including MadTraceProcess) will sometimes not show the main thread for 64bit builds.
The callstacks of all other threads are shown (I think), but the main thread (the one that is actually frozen) is not contained. Is this maybe a known issue?

Re: Freeze detection 64bit

Posted: Thu Dec 12, 2019 4:30 pm
by madshi
Not that I'm aware of. Are you sure the main thread still "exists"? It could be crashed and then gone, which would also explain the detected freeze. Windows doesn't stop a process just because the main thread is done. Actually, Windows doesn't even know the concept of a "main" thread. There are just a bunch of threads. And as long as any thread is still running, and nobody calls ExitProcess(), the process lives on.

P.S: Of course if the main thread actually crashes, madExcept should have reported that, though. So maybe not that likely a scenario? I'm not sure...

Re: Freeze detection 64bit

Posted: Tue Jan 14, 2020 2:09 pm
by obl918
For what it's worth, I have seen this, too. I have a user who uploaded 5 bug reports with no main thread and they were all freeze detection. What's more, she was able to continue using the application without any problems -- except that when the freeze detection interval elapsed, she would get another prompt to upload a bug report.

Re: Freeze detection 64bit

Posted: Wed Jan 15, 2020 9:15 am
by madshi
That sounds so weird! I assume it's a VCL (GUI) application? So even though freeze detection complained and the bug reports contained no main thread, all the VCL forms still continued to work fine?

Re: Freeze detection 64bit

Posted: Mon Mar 16, 2020 1:30 pm
by SSchaefer
I'm very sorry for replying so late! I totally forgot to keep looking into the forum and haven't thought about it until now.

It is a VCL / GUI application, correct. I don't think the main thread has actually crashed, the UI still continues to work. To make it even more weird, If I retry to retrieve a report for a frozen application using MadTraceProcess a few times, then eventually it will be able to list the main thread as well. Just not the first few times.

I did a quick test again just now using the 64bit version of our software TreeSize + MadTraceProcess. Even when the main thread is not actually frozen, the report sometimes does not contain the main thread. You might have to try a few times until its reproducible, but after ~5-7 retries, I recieved a report without main thread.

Re: Freeze detection 64bit

Posted: Tue Mar 24, 2020 9:23 am
by madshi
Can you reproduce the problem in a simple new (almost empty) test project? If so, can you send that test project to me?

Re: Freeze detection 64bit

Posted: Tue Mar 24, 2020 12:23 pm
by SSchaefer
Unfortunately not. I tried creating a sample project and applied all kinds of settings and parameters, but was not able to reproduce it there, sorry

Re: Freeze detection 64bit

Posted: Tue Mar 24, 2020 12:51 pm
by madshi
Too bad, not sure how to fix the problem without being able to reproduce it... :(

Re: Freeze detection 64bit

Posted: Wed Mar 25, 2020 9:57 am
by SSchaefer
I finally managed to reproduce it. I was thinking that maybe the ribbon framework has to do with it, so I added a ribbon menu to the sample application. It still takes quite a few retries until it occurs, but as a repro, I did the following:

- Compile and start the application
- Make sure that the application stays in the foreground, so that the OnUpdate code of the action keeps getting triggered (I think that might have to do with it).
- Run MadTraceProcess64 and select the process Project1.exe
- Check trace report. Retry a few times if necessary (Max ~10 times did it for me. I know that's not ideal, but maybe you can work with this anyway)

Note: You can check "callstack crc" in the first tab to see at first glance if it occured. It will show "$00000000" in that case:
callstack crc : $00000000, $00000000, $d88e605a

Re: Freeze detection 64bit

Posted: Wed Mar 25, 2020 10:14 am
by SSchaefer
I can't get the upload to work..
Could you maybe download from our fileshare and attach the file?
https://fileshare.jam-software.de/share ... cedownload

Re: Freeze detection 64bit

Posted: Wed Sep 01, 2021 2:56 pm
by SSchaefer
The issue is still present, unfortunately. Any chance you can have another look at this? I still have the sample project that I could send you.