Implement minidump2core for Mac

NEW
Unassigned

Status

()

Toolkit
Crash Reporting
--
major
8 years ago
4 years ago

People

(Reporter: morgamic, Unassigned)

Tracking

Trunk
Future
Points:
---

Firefox Tracking Flags

(Not tracked)

Details

(URL)

(Reporter)

Description

8 years ago
jst mentioned in the crashkill meeting that it's not currently possible to do anything with raw crash dumps on the mac platform.  How do we get to the same level of support for mac that we have for linux and windows?

jst - please add anything I'm missing.
Does Apple's gdb support core file debugging? If so, we might be able to port this code to work on Mac:
http://code.google.com/p/google-breakpad/source/browse/trunk/src/tools/linux/md2core/minidump-2-core.cc

What you *can* currently do, although not great, is run minidump_stackwalk or minidump_dump on them locally. "minidump_stackwalk" when run locally will print out the register state for each frame, which is useful. "minidump_dump" will print out the register state and raw stack contents for each thread, which is more difficult to use, but can be useful.
There isn't any way we're going to fix this beyond what I described in comment 1 in a Socorro 1.2 timeframe.
(Reporter)

Comment 3

8 years ago
What timeframe are we looking at?  How can we get some progress on it?
For what it's worth, I added some information on unwinding by hand here:

https://developer.mozilla.org/en/Debugging_a_minidump
Morgamic: the only thing I think we could do here is port that minidump-2-core.cc to work on Mac. Unless we have someone with considerable Mach-O knowledge hiding out somewhere, it's probably a considerable amount of work. I can say for sure that it would take me over a week full time if you wanted me to do the work.

I don't have any better ideas, sorry. (I also think this is kind of out of scope for Socorro.)
(Reporter)

Comment 6

8 years ago
Damon - if this important we need Ted's help.
Target Milestone: 1.2 → 1.3
(Reporter)

Updated

8 years ago
Target Milestone: 1.3 → 1.5

Comment 7

8 years ago
I've done core-file debugging on Mac.  Run Firefox with "ulimit -c unlimited", crash it, look in /cores/ for a gigantic file, pass it to gdb as the second positional argument.

The files are a few hundred megabytes, so I don't know how helpful this is here.
Presumably they'd be smaller if we wrote the code to convert minidumps to cores, since they wouldn't have heap memory.
I don't have any plans to fix this. I'm sure I could fumble my way through it, but someone that had an understanding of Mach-O would be much better suited for the task. (I don't know that we have anyone that fits that bill, granted.)
Assignee: ted.mielczarek → nobody
Target Milestone: 1.5 → 1.6
(Reporter)

Updated

8 years ago
Target Milestone: 1.6 → Future
(Assignee)

Updated

6 years ago
Component: Socorro → General
Product: Webtools → Socorro
Ted, is this still wanted, do you know?  I'm not sure this bug is in the right component any more.
It's definitely still something people would like to have, but I still don't have any plans to work on it. I'll stick this bug under Breakpad to get it out of your hair.
Component: General → Breakpad Integration
Product: Socorro → Toolkit
QA Contact: socorro → breakpad.integration
The URL here discusses generating core files on Mac, and has code to do so.
Summary: Figure out how to debug raw crash dumps on a mac → Implement minidump2core for Mac
You need to log in before you can comment on or make changes to this bug.