Closed Bug 1413526 Opened 6 years ago Closed 6 years ago

retained display lists don't check process types consistently

Categories

(Core :: Web Painting, enhancement)

enhancement
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla58
Tracking Status
firefox58 --- fixed

People

(Reporter: bkelly, Assigned: mikokm)

References

Details

Attachments

(1 file)

It seems currently some retained display list work is skipped here based on process type:

https://searchfox.org/mozilla-central/source/layout/generic/nsFrame.cpp#974

This is to avoid running the display list logic in the parent process in e10s mode.  It also, though, disables the logic for all frames in non-e10s mode.

Meanwhile other retained display list logic runs regardless of process type in other places:

https://searchfox.org/mozilla-central/source/layout/base/nsLayoutUtils.cpp#3659

The feature should probably be uniformly disabled in the same processes throughout.

Also, it would be very nice if we could use this feature in fennec which runs in non-e10s mode.  To do that and still avoid the parent process in e10s mode you can do something like this:

  if (BrowserTabsRemoteAutostart() && !XRE_IsContentProcess()) {
    return
  }

Basically, only check the process type if e10s is enabled.
Thank you for the report. I think we can avoid doing some unnecessary display port related bookkeeping with this.
Assignee: nobody → mikokm
Status: NEW → ASSIGNED
See Also: → android-rdl
Comment on attachment 8924366 [details]
Bug 1413526 - Only create retained display list builder for content processes

https://reviewboard.mozilla.org/r/195620/#review200770
Attachment #8924366 - Flags: review?(matt.woodrow) → review+
Pushed by mikokm@gmail.com:
https://hg.mozilla.org/integration/autoland/rev/c40a09c9790e
Only create retained display list builder for content processes r=mattwoodrow
https://hg.mozilla.org/mozilla-central/rev/c40a09c9790e
Status: ASSIGNED → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla58
See Also: android-rdl
You need to log in before you can comment on or make changes to this bug.