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

Issue 1305353003: VM "cherry-picks" to fix memory leaks in 1.12: (Closed)

Created:
5 years, 4 months ago by Ivan Posva
Modified:
5 years, 3 months ago
Reviewers:
mit, koda, Cutch, Bill Hesse
CC:
reviews_dartlang.org, vm-dev_dartlang.org
Base URL:
git@github.com:dart-lang/sdk.git@dev
Target Ref:
refs/heads/dev
Visibility:
Public.

Description

VM "cherry-picks" to fix memory leaks in 1.12: This is merged into 1.12.0-dev.5.9 Cherry-picks and associated conflict resolution for: 664742f0162a13e0d60c65de0a713df8acd7d8e9 d0b03eebbd63261e7beb8413aa9ce9dfa2a862cc 3aa62d03fcbffc2f2a77f05d2c8e975b75a56d76 74e02785b0e534e469668ce2cabced7d26ec55b1 028c9952959be3b1f275c3cfbe805ab80c49f07a ===== Keep StoreBuffer::global_mutex_ and global_empty_ alive. At Dart::CleanUp time, there may still be threads around that access their store buffer, so we need to keep these around until @zanderso lands the clean shutdown CL. We should stop leaking them once we cleanly stop all threads at VM shutdown (see issue 23844). BUG=https://github.com/dart-lang/sdk/issues/24169 R=iposva@google.com Review URL: https://codereview.chromium.org//1305123003 . Conflicts: runtime/vm/dart.cc Fix reuse of free store buffer blocks from the global cache of free blocks. Add StoreBuffer::ShutDown to delete global cache of free blocks on VM shutdown. BUG=https://github.com/dart-lang/sdk/issues/24129 R=iposva@google.com Review URL: https://codereview.chromium.org//1309603003 . Conflicts: runtime/vm/dart.cc - Prevent interrupting the NULL thread when the isolate is exiting from within a thread. BUG= Review URL: https://codereview.chromium.org//1307833002 . - Initialize fields used in the profiler interrupts. BUG= R=koda@google.com Review URL: https://codereview.chromium.org//1304043003 . Completely remove InterruptableThreadState - InterruptableThreadState is gone. - Moved InterruptableThreadState fields directly into Thread. - Iterate over all threads in an isolate when profiling. - Still only sample the mutator thread. Fix ThreadRegistry leak - When deleting a Thread, iterate over all isolates and remove it from the isolate's thread registry. R=iposva@google.com Review URL: https://codereview.chromium.org//1293253005 . Conflicts: runtime/vm/isolate.h runtime/vm/thread.cc runtime/vm/thread.h runtime/vm/thread_interrupter.cc runtime/vm/thread_interrupter_android.cc runtime/vm/thread_interrupter_linux.cc runtime/vm/thread_interrupter_macos.cc - Fix leak in TimelineEventRecorder. - Fix leak in ThreadRegistry.

Patch Set 1 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+305 lines, -229 lines) Patch
M runtime/vm/dart.cc View 2 chunks +2 lines, -0 lines 0 comments Download
M runtime/vm/growable_array.h View 1 chunk +11 lines, -0 lines 0 comments Download
M runtime/vm/isolate.h View 2 chunks +0 lines, -10 lines 0 comments Download
M runtime/vm/isolate.cc View 3 chunks +20 lines, -19 lines 0 comments Download
M runtime/vm/profiler.cc View 2 chunks +4 lines, -2 lines 0 comments Download
M runtime/vm/store_buffer.h View 1 chunk +1 line, -0 lines 0 comments Download
M runtime/vm/store_buffer.cc View 2 chunks +7 lines, -1 line 0 comments Download
M runtime/vm/thread.h View 2 chunks +33 lines, -0 lines 0 comments Download
M runtime/vm/thread.cc View 10 chunks +65 lines, -17 lines 0 comments Download
M runtime/vm/thread_interrupter.h View 3 chunks +4 lines, -40 lines 0 comments Download
M runtime/vm/thread_interrupter.cc View 1 chunk +0 lines, -89 lines 0 comments Download
M runtime/vm/thread_interrupter_android.cc View 1 chunk +13 lines, -9 lines 0 comments Download
M runtime/vm/thread_interrupter_linux.cc View 1 chunk +13 lines, -9 lines 0 comments Download
M runtime/vm/thread_interrupter_macos.cc View 1 chunk +13 lines, -9 lines 0 comments Download
M runtime/vm/thread_interrupter_test.cc View 1 chunk +4 lines, -3 lines 0 comments Download
M runtime/vm/thread_interrupter_win.cc View 1 chunk +16 lines, -18 lines 0 comments Download
M runtime/vm/thread_registry.h View 2 chunks +23 lines, -1 line 0 comments Download
M runtime/vm/thread_registry.cc View 2 chunks +73 lines, -0 lines 0 comments Download
M runtime/vm/thread_test.cc View 1 chunk +3 lines, -2 lines 0 comments Download

Messages

Total messages: 2 (1 generated)
Ivan Posva
5 years, 4 months ago (2015-08-22 00:07:33 UTC) #2
Related to integration request at https://github.com/dart-lang/sdk/issues/24177

-Ivan

Powered by Google App Engine
This is Rietveld 408576698