Hi,
I have problems with Breakpad that it does not give a proper back trace when running with an application that uses shared memory and maps 4 gb or more of shared memory.
I have made a simple example that crashes and I am unable to get a proper backtrace when using:
mmap(NULL, 1024*1024*1024*4ul, PROT_READ, MAP_SHARED|MAP_ANONYMOUS, -1, 0);
If I change it to 3 gb or just a little less than 4 gb. then I get a usefull backtrace. This is also in the main.cpp file
When using minidump to extract the backtrace it gives me the following errors:
2023-02-23 11:49:08: minidump.cc:1911: ERROR: MinidumpModule has a module problem, 0x7fafe80a9000+0x0
2023-02-23 11:49:08: minidump.cc:2734: ERROR: MinidumpModuleList could not read module 1/8
2023-02-23 11:49:08: minidump.cc:5894: ERROR: GetStream could not read stream type 4
and it also comes with the info "no module list": 2023-02-23 11:49:08: minidump_processor.cc:184: INFO: Minidump /tmp/846b27ed-60d8-4c5d-f7ec87bc-7d22f509.dmp has CPU info, OS info, no Breakpad info, exception, no module list, thread list, no dump thread, requesting thread, and no process create time
Please see the entire minidump from the attached file minidump.txt.
Please also see the files:
main.cpp <-- source code, that generates a crash.
Makefile <-- runable makefile
extract.sh <-- extract symbols
Why am I only able to create shared memory of up to 4 gb to get a usefull backtrace?
Am I missing some compile flags or anything else to make it possible to create shared memory of more than 4 gb?
Best regards
Glen Seested