Open Bug 1127052 Opened 9 years ago Updated 2 years ago

E10s reftests all fail on a screen smaller than the reftest resolution

Categories

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

defect

Tracking

()

Tracking Status
e10s + ---

People

(Reporter: seth, Unassigned)

References

(Blocks 1 open bug)

Details

(Whiteboard: [gfx-noted])

(I'm honestly not sure which code is to blame here, so this might be the wrong component.)

Running:

./mach reftest --e10s dom/html/reftests/toblob-todataurl/reftest.list

causes all tests to fail for me with the error "can't drawWindow remote content".

This seems to be the same as the "widget layers" issue that you get warned about when your screen is smaller than the reftest resolution (which most laptop screens are). If I apply a patch to reduce the reftest resolution to 800x800, which is smaller than my laptop's 900px vertical resolution, then the problem goes away.

The difference, though, is that normal reftests generally work, they just print a warning. With E10s everything totally fails, and you can't get any useful results.
When the screen resolution is too low, we don't have the entire window on the GPU, so we can't do readback to get the test image.

Without e10s we solve this by just redrawing the whole thing in software during the DrawWindow call. This 'works', but it isn't necessarily representative of what you'd get on tbpl since it's a vastly different drawing path (BasicLayerManager, no compositor, no retaining etc).

With e10s we can't easily do this as the DrawWindow call happens in the parent process, but the page content is all in the child. We'd need new ipdl plumbing to send a (sync) request to the child asking it to draw into a shmem section and then combine that with any in-process drawing (without using Compositor). This is all possible, but unlikely to be worth the effort.

We're probably better off trying to improve the error reporting here so that people can more easily figure out how to work around it.
I put a patch in bug 1263092 to improve the error reporting here.
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.