Open Bug 1297251 (gpu-restart) Opened 5 years ago Updated 3 years ago

[meta] Instant GPU Process Restarts


(Core :: Graphics: Layers, defect, P3)





(Reporter: dvander, Unassigned)


(Depends on 2 open bugs, Blocks 1 open bug)


(Keywords: meta, Whiteboard: [gfx-noted])

When the GPU process is killed, or dies, or goes away, we should be able to repaint the entire browser from UI to content with minimal interruption. I don't have any targeted strategy here yet. Device reset work will have covered some things, but not all.

Luckily, this is a super simple project to test. If we kill -s 9 the GPU process, does Firefox work *at all*? If the answer is "no", we're not done yet.

I expect this meta bug to fall into a few categories:

(1) Rebuilding lost IPDL connections.

(2) Asserts that fire due to things failing that previously would not easily or ever fail. For example, interrupted IPDL traffic, devices getting lost, weird error codes, etc.

(3) Crashes that occur because the world stops being coherent in between the GPU process spinning back up.

(4) Heuristics for how many times we should try to re-spin the GPU process, and how long we should wait for it to come back online.

(5) Handling APZ input loss, maybe.

Categories (2) and (3) will probably be 70% of the work.
Alias: gpu-restart
Whiteboard: [gfx-noted]
Depends on: 1305897
You need to log in before you can comment on or make changes to this bug.