Last Comment Bug 779172 - GC: Incremental zeal modes interact badly with BudgetIncrementalGC
: GC: Incremental zeal modes interact badly with BudgetIncrementalGC
Product: Core
Classification: Components
Component: JavaScript Engine (show other bugs)
: unspecified
: All All
-- minor (vote)
: mozilla17
Assigned To: general
: Jon Coppeard (:jonco)
: Jason Orendorff [:jorendorff]
Depends on:
  Show dependency treegraph
Reported: 2012-07-31 09:34 PDT by Jon Coppeard (:jonco)
Modified: 2012-08-02 19:09 PDT (History)
1 user (show)
See Also:
Crash Signature:
QA Whiteboard:
Iteration: ---
Points: ---
Has Regression Range: ---
Has STR: ---

Proposed fix (2.55 KB, patch)
2012-07-31 09:38 PDT, Jon Coppeard (:jonco)
wmccloskey: review+
Details | Diff | Splinter Review

Description User image Jon Coppeard (:jonco) 2012-07-31 09:34:57 PDT
Currently IncrementalCollectSlice() determines whether it should do an incremental collection or not by checking whether the slice budget is unlimited, unless any of the incremental zeal modes are in effect in which case it will always perform an incremental slice as determined by the zeal mode.

BudgetIncrementalGC() sets the budget to unlimited to prevent an incremental GC in situations where it is not safe to do so.  This is therefore ignored when these zeal modes are in effect.

The solution is to pass a dummy slice budget that is not unlimited for the zeal mode GCs.  If the budget is later set to unlimited by BudgetIncrementalGC this will then be respectected.
Comment 1 User image Jon Coppeard (:jonco) 2012-07-31 09:38:30 PDT
Created attachment 647573 [details] [diff] [review]
Proposed fix
Comment 3 User image Ryan VanderMeulen [:RyanVM] 2012-08-02 19:09:56 PDT

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