Open Bug 869917 Opened 11 years ago Updated 2 years ago

Breakpad fails to write a dump on Linux when there are no available file descriptors

Categories

(Toolkit :: Crash Reporting, enhancement, P2)

All
Linux
enhancement

Tracking

()

People

(Reporter: ted, Unassigned)

Details

I hit a crash on Android due to exhausting available file descriptors. Unfortunately I also wound up with an empty minidump. This makes sense, because Breakpad needs to open some files to gather information and write the dump. We could probably fix Breakpad to close a few fds after it clone()s to dump the crashed process.

I was about to file a new bug... but we already knew file descriptor exhaustion was a problem! Bumping the priority on this one and CC'ing everybody who might be interested.

Type: defect → enhancement
Priority: -- → P2
Severity: normal → S3

The other problem is that the crash reporter needs to create a pipe so the crashing process can know when the dump request has been acted on and not exit until then; child processes don't need to (and generally can't) open the minidump file themselves, but they still need a pipe to receive the reply from the crash reporter. But it should be relatively easy to preallocate that. The parent process is a little more complicated, because currently it clones a child process to act as the crash reporter and that process needs to do file I/O etc., so it needs more fds.

You need to log in before you can comment on or make changes to this bug.