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

Issue 1323093004: Clean up and clarify PartitionAlloc (Closed)

Created:
5 years, 3 months ago by Ruud van Asseldonk
Modified:
5 years, 3 months ago
CC:
Mads Ager (chromium), blink-reviews, blink-reviews-wtf_chromium.org, kouhei+heap_chromium.org, Mikhail, oilpan-reviews
Base URL:
https://chromium.googlesource.com/chromium/blink.git@master
Target Ref:
refs/heads/master
Project:
blink
Visibility:
Public.

Description

Clean up and clarify PartitionAlloc A partition page is not ‘typically’ 16 kB, it is always defined to be 16 kB. Also drive-by fixes for line wrapping and typos. Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=201720

Patch Set 1 #

Total comments: 2

Patch Set 2 : Undo round/align change #

Total comments: 1
Unified diffs Side-by-side diffs Delta from patch set Stats (+9 lines, -7 lines) Patch
M Source/wtf/PageAllocator.h View 2 chunks +5 lines, -3 lines 0 comments Download
M Source/wtf/PartitionAlloc.h View 1 1 chunk +4 lines, -4 lines 1 comment Download

Dependent Patchsets:

Messages

Total messages: 12 (3 generated)
Ruud van Asseldonk
In my quest to understand partitionAlloc, I encountered a very misleading comment, and some typos/line ...
5 years, 3 months ago (2015-09-02 15:31:57 UTC) #2
Primiano Tucci (use gerrit)
Hmm ok for fixing comments and improving names (not sure if that justifies a standalone ...
5 years, 3 months ago (2015-09-02 21:58:20 UTC) #3
haraken
On 2015/09/02 21:58:20, Primiano Tucci wrote: > Hmm ok for fixing comments and improving names ...
5 years, 3 months ago (2015-09-02 23:29:35 UTC) #4
Ruud van Asseldonk
https://codereview.chromium.org/1323093004/diff/1/Source/wtf/PartitionAlloc.cpp File Source/wtf/PartitionAlloc.cpp (right): https://codereview.chromium.org/1323093004/diff/1/Source/wtf/PartitionAlloc.cpp#newcode514 Source/wtf/PartitionAlloc.cpp:514: size_t addr = reinterpret_cast<size_t>(ptr); On 2015/09/02 at 21:58:19, Primiano ...
5 years, 3 months ago (2015-09-03 08:32:25 UTC) #5
Primiano Tucci (use gerrit)
LGTM (haraken to stamp) thanks for fixing the comments. Let's move the discussion about the ...
5 years, 3 months ago (2015-09-03 10:31:13 UTC) #6
haraken
LGTM
5 years, 3 months ago (2015-09-03 10:46:56 UTC) #7
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1323093004/20001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1323093004/20001
5 years, 3 months ago (2015-09-03 11:07:43 UTC) #9
commit-bot: I haz the power
Committed patchset #2 (id:20001) as https://src.chromium.org/viewvc/blink?view=rev&revision=201720
5 years, 3 months ago (2015-09-03 11:48:47 UTC) #10
Jens Widell
5 years, 3 months ago (2015-09-03 13:11:46 UTC) #12
Message was sent while issue was closed.
https://codereview.chromium.org/1323093004/diff/20001/Source/wtf/PartitionAll...
File Source/wtf/PartitionAlloc.h (right):

https://codereview.chromium.org/1323093004/diff/20001/Source/wtf/PartitionAll...
Source/wtf/PartitionAlloc.h:144: // What we're actually doing is avoiding
filling the full partition page (16 KB)
I guess this comment meant to discuss the "bucket pages" (my own term, not used
in the code) that are multiples of partition pages, and indeed "typically 16 KB"
(i.e. a single partition page) at least for smaller bucket sizes. "Bucket pages"
are logically what PartitionBucket::activePagesHead point to.

In other words, |X x partition page| makes up the storage for a "bucket page" of
which |Y x bucket slot size| will be used, thus leaving |Z x system page size|
memory permanently unused. (Z might be zero.)

And the restricted freelist filling discussed here avoids filling up the whole
bucket page, by touching as few system pages as possible. It doesn't care
specifically about partition page boundaries.

Powered by Google App Engine
This is Rietveld 408576698