This revision was automatically updated to reflect the committed changes.
Closed by commit rL337694: Add support for parsing Breakpad minidump files that
can have extra padding in… (authored by gclayton, committed by ).
Herald added a subscriber: llvm-commits.
Changed prior to commit:
labath accepted this revision.
labath added a comment.
This revision is now accepted and ready to land.
The extra padding is unfortunate, but I guess we have to live with it now.
Looks good. Thanks.
https://reviews.llvm.org/D49579
___
lldb-commits
clayborg added a comment.
Thanks for the info. Pavel? This good to go? I have another patch that adds the
ARM and ARM64 support that will quickly follow.
https://reviews.llvm.org/D49579
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
markmentovai added a comment.
I know, that was a mistake.
(Unfortunately, I reviewed it. 11 years ago. And now I feel responsible for all
of those malformed minidumps floating around out there.)
If you do need to do this, it seems fine to me, since it’s basically the same
exact workaround. If
clayborg added a comment.
BTW: The padding fix was inspired from the breakpad sources as they do this
exact same thing.
https://reviews.llvm.org/D49579
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
clayborg updated this revision to Diff 156545.
clayborg added a comment.
Remove xcode project changes.
https://reviews.llvm.org/D49579
Files:
source/Plugins/Process/minidump/MinidumpTypes.cpp
unittests/Process/minidump/CMakeLists.txt
clayborg updated this revision to Diff 156544.
clayborg added a comment.
Herald added subscribers: mgorny, srhines.
Improve comments to indicate why padding might be there, fix a test case to use
the right file, and add all new .dmp files to the CMakeLists.txt
https://reviews.llvm.org/D49579
markmentovai added a comment.
This has got to be padding.
Breakpad’s structure definitions don’t nail down alignment as they probably
should. A 32-bit system writing an MDRawMemoryList will write what’s intended,
but a 64-bit one will need to insert four bytes of padding after
clayborg added a comment.
The "sometimes" depends on how compilers pad the structures that define the
lists. Since the structs look like:
struct MemoryList {
uint32_t count;
MemoryDescriptor descriptors[];
};
The compiler might end up padding and extra 4 bytes depending on what is
labath added a subscriber: lemo.
labath added a comment.
@markmentovai, @lemo, do you know under which circumstances do these extra 4
bytes get emitted? Is there any chance we could document this better than just
saying "sometimes"?
Comment at:
clayborg created this revision.
clayborg added reviewers: labath, zturner.
Breakpad files sometimes extra 4 bytes of padding after the 32 bit count for
memory, module and thread lists. I also created bare minimum minidump files
that contain both padded and not padded files that test each
11 matches
Mail list logo