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

Issue 1176003002: Oilpan: Defer reusing freed memory for one GC cycle (Closed)

Created:
5 years, 6 months ago by haraken
Modified:
5 years, 5 months ago
CC:
blink-reviews, oilpan-reviews, kouhei+heap_chromium.org, Mads Ager (chromium)
Target Ref:
refs/heads/master
Project:
blink
Visibility:
Public.

Description

Oilpan: Defer reusing freed memory for one GC cycle This CL defers reusing freed memory for (at least) one GC cycle or coalescing. This is helpful to detect use-after-free errors caused by lazy sweeping (it is scary!). Before this CL, the deferment is enabled only on ASan builds. This CL enables the deferment in non-production builds (i.e., ASSERT || LSan || ASan). See the comment in addToFreeList() for how the deferment is implemented. BUG=420515 Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=196997 Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=197289 Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=198184

Patch Set 1 #

Patch Set 2 : #

Patch Set 3 : #

Patch Set 4 : #

Patch Set 5 : #

Total comments: 2

Patch Set 6 : #

Patch Set 7 : #

Unified diffs Side-by-side diffs Delta from patch set Stats (+126 lines, -64 lines) Patch
M Source/platform/heap/Heap.h View 1 2 3 4 5 6 4 chunks +16 lines, -36 lines 0 comments Download
M Source/platform/heap/Heap.cpp View 1 2 3 4 5 6 4 chunks +68 lines, -28 lines 0 comments Download
M Source/platform/heap/HeapTest.cpp View 1 2 3 4 5 6 2 chunks +42 lines, -0 lines 0 comments Download

Messages

Total messages: 43 (8 generated)
haraken
PTAL
5 years, 6 months ago (2015-06-10 13:26:26 UTC) #2
sof
lgtm
5 years, 6 months ago (2015-06-10 13:57:39 UTC) #3
haraken
I noticed a fundamental problem of this CL... If we delay reusing freed memory, it ...
5 years, 6 months ago (2015-06-10 15:21:17 UTC) #4
haraken
On 2015/06/10 15:21:17, haraken wrote: > I noticed a fundamental problem of this CL... > ...
5 years, 6 months ago (2015-06-12 01:14:36 UTC) #5
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1176003002/40001
5 years, 6 months ago (2015-06-12 01:15:03 UTC) #8
commit-bot: I haz the power
Committed patchset #3 (id:40001) as https://src.chromium.org/viewvc/blink?view=rev&revision=196997
5 years, 6 months ago (2015-06-12 04:35:14 UTC) #9
haraken
I think the latest CL fixes the ASan breakage. (It's unfortunate that we don't have ...
5 years, 6 months ago (2015-06-17 21:11:43 UTC) #10
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1176003002/80001
5 years, 6 months ago (2015-06-17 21:12:35 UTC) #13
commit-bot: I haz the power
Committed patchset #5 (id:80001) as https://src.chromium.org/viewvc/blink?view=rev&revision=197289
5 years, 6 months ago (2015-06-17 22:20:05 UTC) #14
sof
On 2015/06/17 21:11:43, haraken wrote: > I think the latest CL fixes the ASan breakage. ...
5 years, 6 months ago (2015-06-18 05:15:36 UTC) #15
haraken
On 2015/06/18 05:15:36, sof wrote: > On 2015/06/17 21:11:43, haraken wrote: > > I think ...
5 years, 6 months ago (2015-06-18 05:17:41 UTC) #16
haraken
Now the ASan symbols are broken and it's hard to investigate the issue without getting ...
5 years, 6 months ago (2015-06-22 09:40:26 UTC) #17
haraken
+glider https://codereview.chromium.org/1176003002/diff/80001/Source/platform/heap/Heap.cpp File Source/platform/heap/Heap.cpp (right): https://codereview.chromium.org/1176003002/diff/80001/Source/platform/heap/Heap.cpp#newcode1101 Source/platform/heap/Heap.cpp:1101: address[i] = reuseForbiddenZapValue; It seems that this line ...
5 years, 6 months ago (2015-06-22 11:27:39 UTC) #19
haraken
On 2015/06/22 11:27:39, haraken wrote: > +glider > > https://codereview.chromium.org/1176003002/diff/80001/Source/platform/heap/Heap.cpp > File Source/platform/heap/Heap.cpp (right): > ...
5 years, 6 months ago (2015-06-22 11:29:52 UTC) #20
haraken
On 2015/06/22 11:29:52, haraken wrote: > On 2015/06/22 11:27:39, haraken wrote: > > +glider > ...
5 years, 6 months ago (2015-06-22 11:33:11 UTC) #21
Alexander Potapenko
> I identified the cause. It would be because addToFreeList is sometimes inlined > on ...
5 years, 6 months ago (2015-06-25 14:45:17 UTC) #22
sof
On 2015/06/25 14:45:17, Alexander Potapenko wrote: > > I identified the cause. It would be ...
5 years, 6 months ago (2015-06-25 14:54:11 UTC) #23
Alexander Potapenko
On 2015/06/25 14:54:11, sof wrote: > On 2015/06/25 14:45:17, Alexander Potapenko wrote: > > > ...
5 years, 6 months ago (2015-06-25 15:05:52 UTC) #24
sof
On 2015/06/25 15:05:52, Alexander Potapenko wrote: > On 2015/06/25 14:54:11, sof wrote: > > On ...
5 years, 6 months ago (2015-06-25 15:11:06 UTC) #25
haraken
On 2015/06/25 15:11:06, sof wrote: > On 2015/06/25 15:05:52, Alexander Potapenko wrote: > > On ...
5 years, 6 months ago (2015-06-26 00:20:22 UTC) #26
sof
On 2015/06/26 00:20:22, haraken wrote: > On 2015/06/25 15:11:06, sof wrote: > > On 2015/06/25 ...
5 years, 6 months ago (2015-06-26 06:50:06 UTC) #27
Alexander Potapenko
> That would be because addToFreeList() is called from other functions (which > don't have ...
5 years, 6 months ago (2015-06-26 09:09:06 UTC) #28
haraken
The patch set 7 passes all http/tests/ with ASan. Let me try to land it.
5 years, 5 months ago (2015-07-02 03:43:44 UTC) #29
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1176003002/120001
5 years, 5 months ago (2015-07-02 03:44:12 UTC) #32
commit-bot: I haz the power
Committed patchset #7 (id:120001) as https://src.chromium.org/viewvc/blink?view=rev&revision=198184
5 years, 5 months ago (2015-07-02 05:11:19 UTC) #33
sof
ASan bots are failing http://build.chromium.org/p/chromium.webkit/builders/WebKit%20Linux%20ASAN/builds/19255 same for Oilpan.
5 years, 5 months ago (2015-07-02 07:01:47 UTC) #34
haraken
On 2015/07/02 07:01:47, sof wrote: > ASan bots are failing > > > http://build.chromium.org/p/chromium.webkit/builders/WebKit%20Linux%20ASAN/builds/19255 > ...
5 years, 5 months ago (2015-07-02 07:03:02 UTC) #35
sof
On 2015/07/02 07:03:02, haraken wrote: > On 2015/07/02 07:01:47, sof wrote: > > ASan bots ...
5 years, 5 months ago (2015-07-02 07:10:17 UTC) #36
haraken
On 2015/07/02 07:10:17, sof wrote: > On 2015/07/02 07:03:02, haraken wrote: > > On 2015/07/02 ...
5 years, 5 months ago (2015-07-02 07:12:11 UTC) #37
haraken
This is the crash trace. It seems that allocatePage is inlined, even though allocatePage has ...
5 years, 5 months ago (2015-07-02 07:31:55 UTC) #38
sof
On 2015/07/02 07:31:55, haraken wrote: > This is the crash trace. It seems that allocatePage ...
5 years, 5 months ago (2015-07-02 07:34:28 UTC) #39
haraken
On 2015/07/02 07:34:28, sof wrote: > On 2015/07/02 07:31:55, haraken wrote: > > This is ...
5 years, 5 months ago (2015-07-02 07:38:59 UTC) #40
sof
On 2015/07/02 07:38:59, haraken wrote: > On 2015/07/02 07:34:28, sof wrote: > > On 2015/07/02 ...
5 years, 5 months ago (2015-07-02 07:47:27 UTC) #41
haraken
Thanks for all the help. It seems we've succeeded in landing this CL: http://build.chromium.org/p/chromium.webkit/builders/WebKit%20Linux%20Oilpan%20ASAN/builds/2266 I'll ...
5 years, 5 months ago (2015-07-02 11:29:52 UTC) #42
sof
5 years, 5 months ago (2015-07-02 11:34:49 UTC) #43
Message was sent while issue was closed.
On 2015/07/02 11:29:52, haraken wrote:
> Thanks for all the help. It seems we've succeeded in landing this CL:
>
http://build.chromium.org/p/chromium.webkit/builders/WebKit%20Linux%20Oilpan%...
> 
> I'll create a Asan build with Oilpan ToT and update the fuzzer.

Great, that'd be good.

Do notice that some SVGImage-related instability currently exists,

 https://code.google.com/p/chromium/issues/detail?id=491488#c22

Finalization ordering trouble.

Powered by Google App Engine
This is Rietveld 408576698