-
Notifications
You must be signed in to change notification settings - Fork 6.1k
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
PDB Universal unable to apply Global Symbol of Unicode name #5200
Comments
Are you familiar with how to use the PDB MSDIA Analyzer? If so, perhaps you can try that to see if it reveals anything more. Or maybe it will work to completion for you. When building the PDB Universal, we added the ability to try to set the character sets that are being used for 8-bit and 16-bit characters, though those do not seem to be exposed in our GUI configurations. Otherwise, I'd ask you to explore those. I'm not an expert at these, so I lean on other developers when I work in this area. I'm able to run a dump script of the PDB, which does not appear to have a problem, so it there might be a problem with either the PDB Universal applicator or other parts of Ghidra, though they are also built to handle various charsets. It could be that we overlooked something somewhere such that you are having this problem. |
Regarding PDB MSDIA... Regarding PDB Universal... From my investigations, I do not see any unicode/charset issues. That does not mean these do not exist, and there could be a difference in our setups that cause you to see the issue where I do not. There are other lines of investigation you can pursue; one is memory the other is more diagnosis for where it seems to be getting stuck. One tack: Another tack: A thread dump would be helpful to see what is going on for you. Once you are in the bad state, from the command shell (I think they are applicable here on Windows), run: jps (to get the pid of the Ghidra process) These command should be in the bin dir of the jdk installation. |
Hi ghizard :D
It sometimes in 257, sometimes in the 300, the number varies but once it hits something the ghidra then just freezes Regarding PDB Universal, I've tried to left ghidra run overnight while trying to increase the memory (the MAX_MEM parameter), surprisingly it throws potential deadlock exception and just skip the pdb and continue the analysis.
I've tried to dump it when it freezes, I saw "AWT-EventQueue-0" looping endlessly. Here's my full dump using jstack :
I'm also taking another dump (of AWT-EventQueue-0) just in case :
|
Could you try again, but before starting the analysis, close the defined strings component, and anything else that isn't absolutely necessary (ex. symbols tree, program tree, anything showing live data that auto-refreshes). |
As @dev747368 mentioned, the various providers performing work during analysis will slow Ghidra. In this case specifically, it is the Defined Strings view that is effectively locking the UI. |
wow thanks a lot @dev747368 @dragonmacher , it works like charm! <3 I never know the Defined String has significant impact on loading the PDB, i should take note of that from now on :D |
Describe the bug
When begin the analysis, the PDB then try to parse the symbol, and then freezes. I then checked the content of the PDB and some of it contains unicode name.
To Reproduce
Steps to reproduce the behavior:
Expected behavior
PDB Universal should be able to load Unicode name or use generic name to pass them.
Attachments
I've already attached the program along with the debug files in order to easily reproduce the problem
GameServer.zip
Environment (please complete the following information):
The text was updated successfully, but these errors were encountered: