Closed
Bug 1110514
Opened 11 years ago
Closed 10 years ago
Update |jemalloc_free_dirty_pages_impl| to use |arena.<i>.purge|
Categories
(Core :: Memory Allocator, defect)
Tracking
()
RESOLVED
FIXED
mozilla37
People
(Reporter: erahm, Assigned: ggp)
References
Details
Attachments
(1 file, 1 obsolete file)
|
860 bytes,
patch
|
glandium
:
review+
|
Details | Diff | Splinter Review |
|jemalloc_free_dirty_pages_imp| [1] currently uses "arenas.purge" which is obsolete:
> "arena.<i>.purge" (unsigned) -- Purge unused dirty pages for arena <i>, or for
> all arenas if <i> equals "arenas.narenas".
[1] http://dxr.mozilla.org/mozilla-central/source/memory/build/mozjemalloc_compat.c#107
| Assignee | ||
Comment 1•10 years ago
|
||
Attachment #8536830 -
Flags: review?(mh+mozilla)
| Assignee | ||
Updated•10 years ago
|
Assignee: nobody → ggoncalves
Comment 2•10 years ago
|
||
Comment on attachment 8536830 [details] [diff] [review]
Use arena.<i>.purge to free jemalloc3's dirty pages.
Review of attachment 8536830 [details] [diff] [review]:
-----------------------------------------------------------------
::: memory/build/mozjemalloc_compat.c
@@ +160,5 @@
> +
> + je_(mallctl)("arenas.narenas", &narenas, &sz, NULL, 0);
> + je_(mallctlnametomib)("arena.0.purge", mib, &miblen);
> + mib[1] = narenas;
> + je_(mallctlbymib)(mib, miblen, NULL, NULL, NULL, 0);
Just use CTL_GET and CTL_I_GET that are defined in this file and used in jemalloc_stats_impl.
Attachment #8536830 -
Flags: review?(mh+mozilla) → feedback-
Comment 3•10 years ago
|
||
(In reply to Mike Hommey [:glandium] from comment #2)
> Just use CTL_GET and CTL_I_GET that are defined in this file and used in
> jemalloc_stats_impl.
You'll need to factor the fact that it's mib[1] in this case and mib[2] in CTL_I_GET. I wouldn't mind making CTL_I_GET more generic.
| Assignee | ||
Comment 4•10 years ago
|
||
(In reply to Mike Hommey [:glandium] from comment #3)
> You'll need to factor the fact that it's mib[1] in this case and mib[2] in
> CTL_I_GET. I wouldn't mind making CTL_I_GET more generic.
Not only that, but jemalloc also demands that every pointer passed to this ctl be NULL: https://github.com/jemalloc/jemalloc/blob/dev/src/ctl.c#L1453. Given how peculiar this ctl is, do you still think I should modify CTL_I_GET to accommodate for that as well, or is it ok to just leave the explicit je_(mallctlbymib)?
(I'm completely fine with using CTL_GET for narenas though)
| Assignee | ||
Comment 5•10 years ago
|
||
As discussed on IRC, this should be enough. Patch updated.
Attachment #8536830 -
Attachment is obsolete: true
Attachment #8540640 -
Flags: review?(mh+mozilla)
Updated•10 years ago
|
Attachment #8540640 -
Flags: review?(mh+mozilla) → review+
| Assignee | ||
Updated•10 years ago
|
Keywords: checkin-needed
Comment 6•10 years ago
|
||
Keywords: checkin-needed
Comment 7•10 years ago
|
||
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla37
You need to log in
before you can comment on or make changes to this bug.
Description
•