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

Issue 992008: Reimplementation of FunctionStub, to avoid rewriting potentially executing co... (Closed)

Created:
10 years, 9 months ago by Sigurður Ásgeirsson
Modified:
9 years, 7 months ago
CC:
chromium-reviews, amit, Paweł Hajdan Jr.
Visibility:
Public.

Description

Reimplementation of FunctionStub to avoid rewriting potentially executing code for a slight improvement in thread safety. Make VTABLE patching treadsafe to the extent possible. As-is it's now safe against itself running on other threads at lease, as well as against other similar implementations, though the inherent VM operation race is resolved by retrying. BUG=27415 TEST=Included unittests. Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=42381

Patch Set 1 #

Total comments: 4

Patch Set 2 : '' #

Total comments: 8

Patch Set 3 : Now the complete thing with the VTable patch manager patches too #

Total comments: 6

Patch Set 4 : '' #

Unified diffs Side-by-side diffs Delta from patch set Stats (+789 lines, -289 lines) Patch
M chrome_frame/chrome_frame.gyp View 3 6 chunks +5 lines, -1 line 0 comments Download
M chrome_frame/function_stub.h View 1 2 3 4 chunks +64 lines, -164 lines 0 comments Download
A chrome_frame/function_stub.cc View 1 2 3 1 chunk +141 lines, -0 lines 0 comments Download
A + chrome_frame/function_stub_unittest.cc View 1 2 1 chunk +185 lines, -43 lines 0 comments Download
D chrome_frame/test/function_stub_unittest.cc View 1 2 3 1 chunk +0 lines, -65 lines 0 comments Download
M chrome_frame/vtable_patch_manager.h View 3 1 chunk +11 lines, -0 lines 0 comments Download
M chrome_frame/vtable_patch_manager.cc View 3 3 chunks +96 lines, -16 lines 0 comments Download
A chrome_frame/vtable_patch_manager_unittest.cc View 1 chunk +287 lines, -0 lines 0 comments Download

Messages

Total messages: 9 (0 generated)
Sigurður Ásgeirsson
10 years, 9 months ago (2010-03-17 17:37:02 UTC) #1
tommi (sloooow) - chröme
looks good so far. I like the tests too http://codereview.chromium.org/992008/diff/1/4 File chrome_frame/function_stub.cc (right): http://codereview.chromium.org/992008/diff/1/4#newcode24 chrome_frame/function_stub.cc:24: ...
10 years, 9 months ago (2010-03-17 17:49:20 UTC) #2
Sigurður Ásgeirsson
Thanks, added implementation of FromCode + tests and addressed your comments. http://codereview.chromium.org/992008/diff/1/4 File chrome_frame/function_stub.cc (right): ...
10 years, 9 months ago (2010-03-17 19:06:25 UTC) #3
tommi (sloooow) - chröme
lgtm http://codereview.chromium.org/992008/diff/8001/9003 File chrome_frame/function_stub.cc (right): http://codereview.chromium.org/992008/diff/8001/9003#newcode124 chrome_frame/function_stub.cc:124: return candidate; nit: use {} if condition spans ...
10 years, 9 months ago (2010-03-17 19:43:48 UTC) #4
Sigurður Ásgeirsson
10 years, 9 months ago (2010-03-19 17:23:20 UTC) #5
Sigurður Ásgeirsson
Thanks, please take another look. I've added the VTable patch manager changes to this CL, ...
10 years, 9 months ago (2010-03-19 17:26:59 UTC) #6
tommi (sloooow) - chröme
lgtm http://codereview.chromium.org/992008/diff/15001/16007 File chrome_frame/vtable_patch_manager.cc (right): http://codereview.chromium.org/992008/diff/15001/16007#newcode47 chrome_frame/vtable_patch_manager.cc:47: return false; should we perhaps return an error ...
10 years, 9 months ago (2010-03-19 17:41:36 UTC) #7
Sigurður Ásgeirsson
Thanks, please take one last look. I found I needed to add a couple of ...
10 years, 9 months ago (2010-03-22 20:13:49 UTC) #8
tommi (sloooow) - chröme
10 years, 9 months ago (2010-03-22 23:11:51 UTC) #9
lgtm

Powered by Google App Engine
This is Rietveld 408576698