Closed Bug 1879504 Opened 3 months ago Closed 3 months ago

Reset GPU process' unstable launch counter when we successfully launch a stable process

Categories

(Core :: Graphics, task)

task

Tracking

()

RESOLVED FIXED
124 Branch
Tracking Status
firefox124 --- fixed

People

(Reporter: jnicol, Assigned: jnicol)

References

(Blocks 1 open bug)

Details

Attachments

(1 file)

When investigating bug 1866555 we discovered that we are losing the GPU process and therefore hardware webrender much more frequently than we would like on Android.

Currently we disable the GPU process after a certain number of unstable launch attempts (controlled via the pref layers.gpu-process.max_restarts which is 6). This counter is never reset, meaning over a long session it is possible to reach this limit despite the GPU process being stable the vast majority of the time. I'm unsure whether that was the original intent, but it would make sense to me to reset this counter once we have a stable process. This should make it much harder to lose the GPU process over a long session, but still allow it to fallback if we encounter an unstable launch loop.

(I already wrote code for this in an unlanded patch in bug 1870021. But I'm spinning it out in to its own bug here)

We are seeing Android users running software webrender at a much
higher frequency than desired due to encountering too many unstable
GPU processes. We currently fall back to software webrender after
encountering 6 unstable GPU processes in total over the course of the
parent process' lifetime. This patch makes it so that the counter is
reset once a GPU process is declared stable, meaning we will only fall
back if they encounter enough crashes/errors in quick succession.

Hopefully this helps keep users running with a GPU process and
hardware acceleration over the course of a long session, whilst still
falling back if they hit an unrecoverable error/crash.

Assignee: nobody → jnicol
Status: NEW → ASSIGNED
Pushed by jnicol@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/1a8575219959
Reset GPU process' unstable launch counter when we successfully launch a stable process. r=aosmond
Status: ASSIGNED → RESOLVED
Closed: 3 months ago
Resolution: --- → FIXED
Target Milestone: --- → 124 Branch
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: