Last Comment Bug 659839 - IonMonkey: Implement OOM Ballast
: IonMonkey: Implement OOM Ballast
Status: RESOLVED FIXED
:
Product: Core
Classification: Components
Component: JavaScript Engine (show other bugs)
: unspecified
: x86_64 Linux
: -- normal with 1 vote (vote)
: ---
Assigned To: general
:
:
Mentors:
Depends on: 659782
Blocks: IonMonkey
  Show dependency treegraph
 
Reported: 2011-05-25 18:50 PDT by David Anderson [:dvander]
Modified: 2012-07-27 16:43 PDT (History)
5 users (show)
See Also:
Crash Signature:
(edit)
QA Whiteboard:
Iteration: ---
Points: ---
Has Regression Range: ---
Has STR: ---


Attachments

Description David Anderson [:dvander] 2011-05-25 18:50:45 PDT
As of bug 659782 the allocator is treated as infallible for small, fix-sized structures. The ballast isn't actually implemented though, so at some point we'll have to modify IonAllocPolicy::ensureBallast to reserve space in the arena.
Comment 1 Nicholas Nethercote [:njn] 2011-06-02 19:33:20 PDT
A tip from TM:  be careful where you put the ballast.  TM has some ballast (for nanojit) in every compartment, and you can have a lot of compartments, so that's just wasted space.  It's much better if you can put it in the JSRuntime, say.  Though I guess you then have locking considerations.  Hmm.  Ballast kinda sucks.
Comment 2 David Anderson [:dvander] 2011-06-02 21:48:24 PDT
Would the threaddata be okay in terms of memory use? The compiler won't re-enter and the ballast could live and die with the compiler, if need be.
Comment 3 Nicholas Nethercote [:njn] 2011-06-02 22:04:02 PDT
(In reply to comment #2)
> Would the threaddata be okay in terms of memory use? The compiler won't
> re-enter and the ballast could live and die with the compiler, if need be.

Sounds ideal.  Do you mean ThreadData in jscntxt.h?  I wonder if the tracer ballast could be moved in there as well.
Comment 4 David Anderson [:dvander] 2012-07-27 16:43:11 PDT
This got fixed a while ago.

Note You need to log in before you can comment on or make changes to this bug.