Closed Bug 761962 Opened 8 years ago Closed 8 years ago

Mediate omtc and out-of-process content

Categories

(Firefox OS Graveyard :: General, defect)

defect
Not set

Tracking

(blocking-kilimanjaro:?, blocking-basecamp:+)

RESOLVED FIXED
blocking-kilimanjaro ?
blocking-basecamp +

People

(Reporter: cjones, Assigned: cjones)

References

Details

Attachments

(1 file)

CC'ing folks who are likely to be affected by this.

Until bug 745148 lands, we'll be forced to choose either omtc or out-of-process content.  (Recursive shadow layer txns aren't implemented currently and may never /need/ to be.)  So we have to decide which pref "wins" if both are enabled.

Out-of-process content is currently much more invasive because it affects all the DOM APIs that touch system resources.  Most folks working on electrolyzing DOM APIs don't care about gfx (beyond working/not-working).  So OOP content should win.

(Anyone working on cross-process efficient gfx, like sharing gralloc surfaces, falls into the same bucket.  Cross-*thread* efficient gfx should be a subset of issues of cross-process going forward, for gonk.  We should use the same code for both.  But debugging cross-thread can be easier sometimes.)

This will mean that to force-off OOP content and force-on omtc, you'll need to set
  pref("dom.ipc.tabs.disabled", true);
  pref("layers.offmainthreadcomposition.enabled", true);

in either $gecko/b2g/app/b2g.js or user.js.  (The latter pref will soon be the default for b2g.)
Just as a fyi, it's easy to add custom preferences when installing gaia, by adding them in $gaia/custom-prefs.js

They are added to the user.js that is pushed to the profile, so they have to be user_pref().
Comment on attachment 630488 [details] [diff] [review]
Prefer out-of-process content to omtc when they contend

Gol'dernit, forget to request review.
Attachment #630488 - Flags: review?(ajuma)
Attachment #630488 - Flags: review?(ajuma) → review+
https://hg.mozilla.org/mozilla-central/rev/b9c7e2a573c9
Status: NEW → RESOLVED
Closed: 8 years ago
Resolution: --- → FIXED
blocking-basecamp: --- → ?
blocking-kilimanjaro: --- → ?
Required for OMTC, which is required, so blocking+.
blocking-basecamp: ? → +
You need to log in before you can comment on or make changes to this bug.