Closed
Bug 1373725
Opened 8 years ago
Closed 8 years ago
stylo: Rule tree never gets GCed until teardown
Categories
(Core :: CSS Parsing and Computation, enhancement, P1)
Core
CSS Parsing and Computation
Tracking
()
RESOLVED
FIXED
People
(Reporter: bholley, Assigned: bholley)
References
(Blocks 1 open bug)
Details
Attachments
(4 files)
1.29 KB,
patch
|
emilio
:
review+
|
Details | Diff | Splinter Review |
11.41 KB,
patch
|
emilio
:
review+
|
Details | Diff | Splinter Review |
5.03 KB,
patch
|
emilio
:
review+
|
Details | Diff | Splinter Review |
2.26 KB,
patch
|
emilio
:
review+
|
Details | Diff | Splinter Review |
Brian Lewis discovered this in [1]. Thanks Brian!
Working up a patch now.
[1] https://github.com/servo/servo/issues/17280
Assignee | ||
Comment 1•8 years ago
|
||
Oh, and on top of that, it looks like we never actually call maybe_gc(). Adding a patch for that as well...
Summary: stylo: Rule tree never increments free counter, and thus never gets GCed until teardown → stylo: Rule tree never gets GCed until teardown
Assignee | ||
Comment 2•8 years ago
|
||
Assignee | ||
Comment 3•8 years ago
|
||
And here's a try run with a bonus fix to assert against permanently leaking rule nodes: https://treeherder.mozilla.org/#/jobs?repo=try&revision=bd0ca5e6e654f638f3bceafb56ee6e9d566e7006
Assignee | ||
Comment 4•8 years ago
|
||
MozReview-Commit-ID: 1uipYlIF8fv
Attachment #8878636 -
Flags: review?(emilio+bugs)
Assignee | ||
Comment 5•8 years ago
|
||
MozReview-Commit-ID: 9jVkDM4P8mC
Attachment #8878637 -
Flags: review?(emilio+bugs)
Assignee | ||
Comment 6•8 years ago
|
||
MozReview-Commit-ID: W2lkQohudA
Attachment #8878638 -
Flags: review?(emilio+bugs)
Assignee | ||
Comment 7•8 years ago
|
||
MozReview-Commit-ID: CK5iEWWHFSr
Attachment #8878639 -
Flags: review?(emilio+bugs)
Comment 8•8 years ago
|
||
Comment on attachment 8878636 [details] [diff] [review]
Part 1 - Actually increment the counter when adding rule nodes to the free list. v1
Review of attachment 8878636 [details] [diff] [review]:
-----------------------------------------------------------------
Pfft... good catch :)
Attachment #8878636 -
Flags: review?(emilio+bugs) → review+
Updated•8 years ago
|
Attachment #8878637 -
Flags: review?(emilio+bugs) → review+
Comment 9•8 years ago
|
||
Comment on attachment 8878638 [details] [diff] [review]
Part 3 - Trigger a rule tree gc at the end of DoProcessPendingRestyles. v1
Review of attachment 8878638 [details] [diff] [review]:
-----------------------------------------------------------------
I'm pretty sure we called this when it was added, I wonder when was it removed...
Attachment #8878638 -
Flags: review?(emilio+bugs) → review+
Comment 10•8 years ago
|
||
Comment on attachment 8878639 [details] [diff] [review]
Part 4 - Assert against permanently-leaked rule nodes. v1
Review of attachment 8878639 [details] [diff] [review]:
-----------------------------------------------------------------
r=me
Attachment #8878639 -
Flags: review?(emilio+bugs) → review+
Comment 11•8 years ago
|
||
Ick, of course I was the one that removed it... https://github.com/servo/servo/commit/e67ea42c3fa03264b8c897430f7c17a7c153e5bd
Assignee | ||
Comment 12•8 years ago
|
||
Assignee | ||
Comment 13•8 years ago
|
||
Status: NEW → RESOLVED
Closed: 8 years ago
Resolution: --- → FIXED
Comment 14•8 years ago
|
||
Pushed by bholley@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/a21be24aa822
Trigger a rule tree gc at the end of DoProcessPendingRestyles. r=emilio
![]() |
||
Comment 15•8 years ago
|
||
bugherder |
You need to log in
before you can comment on or make changes to this bug.
Description
•