Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(17)

Issue 8227010: Fix deadlock in process exit handling (Closed)

Created:
9 years, 2 months ago by Søren Gjesse
Modified:
9 years, 2 months ago
Reviewers:
Mads Ager (google)
CC:
reviews_dartlang.org
Visibility:
Public.

Description

Fix deadlock in process exit handling As glibc allocation routines are not re-entrant avoid calling delete in signal handler. Instead the message send from the signal handler on process exit contains both the pid and the exit code. The internal _Process object always installs a data handler for the exit message and calls back into C++ to cleanup the resources allocated for running a process. Changed the ActiveProcess (renamed to ProcessInfo) to form an explicitly linked list. R=ager@google.com BUG=dart:1 TEST= Committed: https://code.google.com/p/dart/source/detail?r=325

Patch Set 1 #

Patch Set 2 : Minor fixes #

Total comments: 8

Patch Set 3 : Addressed review comments from @ager #

Unified diffs Side-by-side diffs Delta from patch set Stats (+181 lines, -97 lines) Patch
M runtime/bin/builtin_in.cc View 1 chunk +2 lines, -1 line 0 comments Download
M runtime/bin/process.h View 1 2 2 chunks +6 lines, -0 lines 0 comments Download
M runtime/bin/process.cc View 2 chunks +9 lines, -0 lines 0 comments Download
M runtime/bin/process_impl.dart View 1 2 3 chunks +34 lines, -34 lines 0 comments Download
M runtime/bin/process_linux.cc View 1 2 6 chunks +65 lines, -29 lines 0 comments Download
M runtime/bin/process_macos.cc View 6 chunks +65 lines, -28 lines 0 comments Download
M runtime/tests/dart/dart.status View 1 chunk +0 lines, -5 lines 0 comments Download

Messages

Total messages: 4 (0 generated)
Søren Gjesse
Linux and Mac OS files are identical.
9 years, 2 months ago (2011-10-11 10:41:06 UTC) #1
Mads Ager (google)
http://codereview.chromium.org/8227010/diff/2001/runtime/bin/process.h File runtime/bin/process.h (right): http://codereview.chromium.org/8227010/diff/2001/runtime/bin/process.h#newcode30 runtime/bin/process.h:30: // Indicate that he process with the given pid ...
9 years, 2 months ago (2011-10-11 10:50:27 UTC) #2
Søren Gjesse
http://codereview.chromium.org/8227010/diff/2001/runtime/bin/process.h File runtime/bin/process.h (right): http://codereview.chromium.org/8227010/diff/2001/runtime/bin/process.h#newcode30 runtime/bin/process.h:30: // Indicate that he process with the given pid ...
9 years, 2 months ago (2011-10-11 11:08:03 UTC) #3
Mads Ager (google)
9 years, 2 months ago (2011-10-11 11:18:28 UTC) #4
lgtm

Powered by Google App Engine
This is Rietveld 408576698