Thanks for the additional details. I was assuming the freeze is happening more frequently. I've seen these freezes myself a couple of times. Roughly every 3 to 4 weeks for me and I couldn't figure out what was causing this. Since wfreerdp.exe is an external process it's hard to pinpoint and debug the issue. The memory dumps I did myself were not helpful but I will look at yours and see if I can find something actionable.
OK I will open a ticket.
And of course not reproducable.
I can work with Royal TS for 2 weeks with at least 3+ connections open, even lock my laptop and nothing happens.
Then suddenly on a busy day with only 1 connection and little time it''s freezing again...
Hi David,
I'm happy to look at the dump files to see if there's something we can do. Please open a support ticket to discuss how to provide the dump files to our support team.
I guess the issue is not reproducable, right?
Hi,
I am a new colleague of Birger who took over this topic.
We are using versioni : 7.2.50703 and I faced freezes recently.
I was able to do two dumps: one for wfreerdp and the other one for RoyalTS.exe
These dumps are quite big, even compressed about 400 MB.
Can I upload them somewhere?
Do I need to create a ticket or can you open one for me?
I still have people in my organisation reporting freezes of Royal TS when using its FreeRDP client. I will get them to create dumps if that helps.
Thanks for the update! Yes, when I first launched it I had a couple of hiccups, but they went away. I will keep testing and let you know.
Hi Alexander,
thanks for testing. Btw, we released an official beta release yesterday:
https://www.royalapps.com/go/kb-ts-win-downloadbeta
You might want to upgrade to this one.
Also, just out of curiosity: did you have a single hang since the update?
Regards,
Stefan
Can confirm - it works a lot better now. Will keep monitoring and let you know if there are any issues.
One of the FreeRDP maintainers was very kind and helpful and pushed a change which should fix the cross threading issue. I've just created a new Royal TS V7 Beta Build which also includes the new wfreerdp.exe with the fix:
x64 MSI: https://download.royalapps.com/RoyalTS/RoyalTSInstaller_7.00.20219.0_x64.msi
x64 ZIP: https://download.royalapps.com/RoyalTS/RoyalTS_7.00.20219.0_x64.zip
ARM64 MSI: https://download.royalapps.com/RoyalTS/RoyalTSInstaller_7.00.20219.0_ARM64.msi
ARM64 ZIP: https://download.royalapps.com/RoyalTS/RoyalTS_7.00.20219.0_ARM64.zip
Please note that this build hasn't been fully tested yet but I wanted to let you try this build as soon as possible to see if the wfreerdp.exe fix is effective. \
Looking forward to your feedback. Thanks!
Hi!
A small update from my investigation:
1. it's extremely hard for me to reproduce the issue. At one time, it took almost an hour of constantly reconnecting to get a "hang/freeze". I assume the more CPU cores a system has, the more "unlikely" the hang will happen.
2. From what I can tell, the issue seems to be that the FreeRDP window is created on a non-main thread and then, at a later point in time, the same window is shown on a completely different non-main thread. While this may work in most cases, it can be a potential source for the hang.
3. To prevent that and rule this out as a root cause, the window creation and showing of the window should happen on the same thread, ideally on the main thread. The current wfreerdp.exe does not have any facilities to process cross-threading messages. Maybe there are other ways to accomplish that. To implement something like that, one of the freerdp team may probably need to take a look at it.
I'll keep you posted. Sorry for not having any better news at this time.
Regards,
Stefan
Hi!
I suggest you open a support ticket here: https://www.royalapps.com/go/support-ticket-new
Not sure how big the dump file is but maybe we can find a way to transfer the file somehow privately.
Thanks,
Stefan
I ran analyze on the dump file:
0:000> !analyze -v ******************************************************************************* * * * Exception Analysis * * * ******************************************************************************* KEY_VALUES_STRING: 1 Key : Analysis.CPU.mSec Value: 2234 Key : Analysis.DebugAnalysisManager Value: Create Key : Analysis.Elapsed.mSec Value: 44122 Key : Analysis.IO.Other.Mb Value: 14 Key : Analysis.IO.Read.Mb Value: 0 Key : Analysis.IO.Write.Mb Value: 29 Key : Analysis.Init.CPU.mSec Value: 468 Key : Analysis.Init.Elapsed.mSec Value: 45456 Key : Analysis.Memory.CommitPeak.Mb Value: 91 Key : Timeline.OS.Boot.DeltaSec Value: 1625320 Key : Timeline.Process.Start.DeltaSec Value: 10 Key : WER.OS.Branch Value: vb_release Key : WER.OS.Timestamp Value: 2019-12-06T14:06:00Z Key : WER.OS.Version Value: 10.0.19041.1 FILE_IN_CAB: wfreerdp.DMP NTGLOBALFLAG: 0 PROCESS_BAM_CURRENT_THROTTLED: 0 PROCESS_BAM_PREVIOUS_THROTTLED: 0 APPLICATION_VERIFIER_FLAGS: 0 EXCEPTION_RECORD: (.exr -1) ExceptionAddress: 0000000000000000 ExceptionCode: 80000003 (Break instruction exception) ExceptionFlags: 00000000 NumberParameters: 0 FAULTING_THREAD: 0000205c PROCESS_NAME: wfreerdp.exe ERROR_CODE: (NTSTATUS) 0x80000003 - {EXCEPTION} Breakpoint A breakpoint has been reached. EXCEPTION_CODE_STR: 80000003 STACK_TEXT: 00000084`c21df698 00007ff8`978a306e : 0000024c`e8b6dbe0 00000000`00000000 00000000`00000000 0000024c`e8b6e790 : ntdll!NtWaitForSingleObject+0x14 00000084`c21df6a0 00007ff6`54b463be : 00000000`00000000 00000000`0000000c 00000000`00000000 00000000`0000032c : KERNELBASE!WaitForSingleObjectEx+0x8e 00000084`c21df740 00007ff6`54ed8910 : 00000000`0000000a 00007ff6`54ac0000 00000000`00000000 00000000`0000000a : wfreerdp!RdpClientEntry+0x194e 00000084`c21df810 00007ff8`998d7614 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : wfreerdp!smartcard_pack_read_cache_return+0x126b50 00000084`c21df850 00007ff8`99f226a1 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : kernel32!BaseThreadInitThunk+0x14 00000084`c21df880 00000000`00000000 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : ntdll!RtlUserThreadStart+0x21 STACK_COMMAND: ~0s; .ecxr ; kb SYMBOL_NAME: wfreerdp+194e MODULE_NAME: wfreerdp IMAGE_NAME: wfreerdp.exe FAILURE_BUCKET_ID: BREAKPOINT_80000003_wfreerdp.exe!Unknown OS_VERSION: 10.0.19041.1 BUILDLAB_STR: vb_release OSPLATFORM_TYPE: x64 OSNAME: Windows 10 FAILURE_ID_HASH: {1fa1ce24-e6ea-bbe3-d753-51fb72f71ce5} Followup: MachineOwner ---------
Thanks, I have the dump now, where do I send?
The easiest way would be to open the Windows task manager, go to the Details view, select wfreerdp.exe which hangs, right-click and select "Create dump file".
Stefan, how do I create a mini dump? Thanks
Daniel Breisacher
Hi there,
I'am using the Beta of RoyalTS V7. Sometimes when I try to connect on a server with freeRDP the complete application freezes and I have to force terminate it. The only thing you can see is a small bar in the left downer site of the window. For me it looks like a bug.
regards
Daniel
P.s. I configured the connection to use a SOCKS5 proxy.