Closed
Bug 941792
Opened 11 years ago
Closed 11 years ago
Make sure decommitting actually works on B2G
Categories
(Core :: JavaScript Engine, defect)
Core
JavaScript Engine
Tracking
()
RESOLVED
FIXED
mozilla28
People
(Reporter: mccr8, Assigned: laszio.bugzilla)
References
Details
(Whiteboard: [MemShrink:P1])
Attachments
(1 file)
5.62 KB,
patch
|
Details | Diff | Splinter Review |
I'd think we'd have seen more problems if it didn't, but it isn't clear anybody has actually explicitly tested this.
Ting-Yuan, is this something you could investigate?
Flags: needinfo?(thuang)
Assignee | ||
Comment 3•11 years ago
|
||
May I know if we are talking about making sure that the allocator/collector properly calls madvise()/..., or to check if the kernel works correctly?
Flags: needinfo?(thuang)
The kernel, I believe. Can you confirm njn?
Flags: needinfo?(n.nethercote)
Comment 5•11 years ago
|
||
Well, both parts need to work :) But I think the doubt was more about the kernel side, because we're pretty confident decommitting works on desktop, and the SpiderMonkey side of things is shared between desktop Firefox and Firefox OS.
Flags: needinfo?(n.nethercote)
Assignee | ||
Comment 6•11 years ago
|
||
I see. I'll try to write some tests in the userland to make sure that decommitted memory can be allocated (to other processes) again.
By the way, I'm considering to create a repository for compatibility and stress tests for platforms; We have been suffering from many platform issues, especially on new platforms of new partners. It would be great to filter out platform problems in early stages. Do we have something similar already?
Assignee | ||
Comment 7•11 years ago
|
||
I tested by spawning N threads/processes and allowing M of them to run concurrently. Each of M repeatedly writes K bytes, where M * K is close to available system memory, and then decommit. If the decommit, namely MADV_DONTNEED, doesn't work, it will be killed immediately.
On Inari(ZTE Open) and emulator it passed the test. Are there any additional targets of interest?
Thanks Ting-Yuan.
Is there anything else we want to check here?
Flags: needinfo?(n.nethercote)
(In reply to Ting-Yuan Huang from comment #6)
> By the way, I'm considering to create a repository for compatibility and
> stress tests for platforms; We have been suffering from many platform
> issues, especially on new platforms of new partners. It would be great to
> filter out platform problems in early stages. Do we have something similar
> already?
I think this is a great idea. I'm not aware of anything similar that exists already. Maybe check with mwu?
Comment 10•11 years ago
|
||
> Is there anything else we want to check here?
Something else I should have thought of earlier: about:memory has a "decommitted" sub-tree in the "Other Measurements" section. Are we getting non-zero values there for B2G processes? Maybe not all the time, but at least some of the time?
Flags: needinfo?(n.nethercote)
Yes, I've seen b2g memory reports with decommited values.
Reopen if you disagree.
Assignee: nobody → thuang
Status: NEW → RESOLVED
Closed: 11 years ago
Resolution: --- → FIXED
Updated•11 years ago
|
Target Milestone: --- → mozilla28
You need to log in
before you can comment on or make changes to this bug.
Description
•