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

Issue 1537543002: Fix for issue 25236 (Closed)

Created:
5 years ago by siva
Modified:
5 years ago
Reviewers:
zra, Florian Schneider
CC:
reviews_dartlang.org, vm-dev_dartlang.org
Base URL:
git@github.com:dart-lang/sdk.git@master
Target Ref:
refs/heads/master
Visibility:
Public.

Description

Fix for issue 25236 - Ensure that no new OSThreads are created once the VM is in shutdown mode - Do not query thread_list_head_ without a lock (this leads to the race which causes two threads to delete the lock and TLS at the same time) BUG=25236 R=zra@google.com Committed: https://github.com/dart-lang/sdk/commit/b40775549f59740c7fb874da734417b9b56cd758

Patch Set 1 #

Total comments: 8

Patch Set 2 : code-review-comments #

Total comments: 6

Patch Set 3 : code-review-comments #

Unified diffs Side-by-side diffs Delta from patch set Stats (+155 lines, -75 lines) Patch
M runtime/vm/compiler.cc View 1 chunk +2 lines, -1 line 0 comments Download
M runtime/vm/dart.cc View 1 3 chunks +10 lines, -3 lines 0 comments Download
M runtime/vm/dart_api_impl.cc View 2 chunks +6 lines, -2 lines 0 comments Download
M runtime/vm/gc_marker.cc View 1 chunk +2 lines, -1 line 0 comments Download
M runtime/vm/gc_sweeper.cc View 1 chunk +2 lines, -1 line 0 comments Download
M runtime/vm/isolate.cc View 1 2 1 chunk +6 lines, -1 line 0 comments Download
M runtime/vm/os_thread.h View 1 4 chunks +13 lines, -2 lines 0 comments Download
M runtime/vm/os_thread.cc View 1 2 8 chunks +42 lines, -10 lines 0 comments Download
M runtime/vm/os_thread_android.cc View 1 chunk +7 lines, -5 lines 0 comments Download
M runtime/vm/os_thread_linux.cc View 1 chunk +7 lines, -5 lines 0 comments Download
M runtime/vm/os_thread_macos.cc View 1 chunk +7 lines, -5 lines 0 comments Download
M runtime/vm/os_thread_win.cc View 1 chunk +7 lines, -5 lines 0 comments Download
M runtime/vm/thread.h View 2 chunks +2 lines, -2 lines 0 comments Download
M runtime/vm/thread.cc View 2 chunks +21 lines, -12 lines 0 comments Download
M runtime/vm/thread_registry.cc View 1 chunk +21 lines, -20 lines 0 comments Download

Messages

Total messages: 12 (3 generated)
siva
5 years ago (2015-12-17 00:45:34 UTC) #2
Florian Schneider
https://codereview.chromium.org/1537543002/diff/1/runtime/vm/os_thread.cc File runtime/vm/os_thread.cc (right): https://codereview.chromium.org/1537543002/diff/1/runtime/vm/os_thread.cc#newcode223 runtime/vm/os_thread.cc:223: final_thread = !creation_enabled_ && (thread_list_head_ == NULL); It seems ...
5 years ago (2015-12-17 13:33:08 UTC) #4
zra
https://codereview.chromium.org/1537543002/diff/1/runtime/vm/os_thread.cc File runtime/vm/os_thread.cc (right): https://codereview.chromium.org/1537543002/diff/1/runtime/vm/os_thread.cc#newcode162 runtime/vm/os_thread.cc:162: void OSThread::DisableOSThreadCreation() { Where is this called? https://codereview.chromium.org/1537543002/diff/1/runtime/vm/os_thread.cc#newcode180 runtime/vm/os_thread.cc:180: ...
5 years ago (2015-12-17 16:37:59 UTC) #5
siva
Addressed comments PTAL. https://codereview.chromium.org/1537543002/diff/1/runtime/vm/os_thread.cc File runtime/vm/os_thread.cc (right): https://codereview.chromium.org/1537543002/diff/1/runtime/vm/os_thread.cc#newcode162 runtime/vm/os_thread.cc:162: void OSThread::DisableOSThreadCreation() { On 2015/12/17 16:37:59, ...
5 years ago (2015-12-17 18:19:13 UTC) #6
zra
https://codereview.chromium.org/1537543002/diff/20001/runtime/vm/dart.cc File runtime/vm/dart.cc (right): https://codereview.chromium.org/1537543002/diff/20001/runtime/vm/dart.cc#newcode227 runtime/vm/dart.cc:227: OSThread::DisableOSThreadCreation(); Should we defend against concurrent/multiple calls to Dart_Cleanup()? ...
5 years ago (2015-12-17 19:01:43 UTC) #7
zra
https://codereview.chromium.org/1537543002/diff/20001/runtime/vm/os_thread.cc File runtime/vm/os_thread.cc (right): https://codereview.chromium.org/1537543002/diff/20001/runtime/vm/os_thread.cc#newcode134 runtime/vm/os_thread.cc:134: ASSERT(OSThread::Current() == NULL); Just noticed this: OSThread::Current() can call ...
5 years ago (2015-12-17 22:04:15 UTC) #8
siva
https://codereview.chromium.org/1537543002/diff/20001/runtime/vm/dart.cc File runtime/vm/dart.cc (right): https://codereview.chromium.org/1537543002/diff/20001/runtime/vm/dart.cc#newcode227 runtime/vm/dart.cc:227: OSThread::DisableOSThreadCreation(); On 2015/12/17 19:01:43, zra wrote: > Should we ...
5 years ago (2015-12-17 23:21:14 UTC) #9
zra
lgtm
5 years ago (2015-12-17 23:26:10 UTC) #10
siva
5 years ago (2015-12-18 18:16:34 UTC) #12
Message was sent while issue was closed.
Committed patchset #3 (id:40001) manually as
b40775549f59740c7fb874da734417b9b56cd758 (presubmit successful).

Powered by Google App Engine
This is Rietveld 408576698