Closed Bug 457532 Opened 17 years ago Closed 4 years ago

GC_ZEAL is not zealous enough when JS_THREADSAFE is enabled

Categories

(Core :: JavaScript Engine, defect)

defect
Not set
normal

Tracking

()

RESOLVED INVALID

People

(Reporter: igor, Unassigned)

Details

Attachments

(1 file)

Currently with the JS_GC_ZEAL enabled the allocation code in jsgc.cpp still does not run the GC on each allocation with JS_THREADSAFE builds. This is due to allocation from thread-local lists which defeats the purpose of having gczeal in the first place. This should be fixed to ensure uniform GC zeal semantics.
Summary: GC_ZEAL is not zeal enough → GC_ZEAL is not zealous enough when JS_THREADSAFE is enabled
Attached patch fixSplinter Review
The patch makes sure that with the defined zeal the local lists are not used. For simplicity the patch removes in RefillDoubleFreeList JS_ASSERT(!cx->doubleFreeList) since RefillDoubleFreeList does not care about the local lists stored in the JSContext.
Attachment #340922 - Flags: review?(mrbkap)
Attachment #340922 - Flags: review?(mrbkap) → review+
These bugs are all part of a search I made for js bugs that are getting lost in transit: http://tinyurl.com/jsDeadEndBugs They all have a review+'ed, non-obsoleted patch and are not marked fixed-in-tracemonkey or checkin-needed but have not seen any activity in 300 days. Some of these got lost simply because the assignee/patch provider never requested a checkin, or just because they were forgotten about.
Assignee: igor → general
Assignee: general → nobody

JS_THREADSAFE doesn't exist anymore -> INVALID.

Status: NEW → RESOLVED
Closed: 4 years ago
Resolution: --- → INVALID
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: