Closed Bug 1212483 Opened 4 years ago Closed 4 years ago

abcnews article triggers "[GFX1-]: Failed to allocate a surface due to invalid size Size(0,0)" in terminal, at large window-sizes

Categories

(Core :: Graphics, defect)

defect
Not set

Tracking

()

RESOLVED WORKSFORME
Tracking Status
firefox43 --- unaffected
firefox44 --- unaffected
firefox45 --- unaffected
firefox46 --- fixed

People

(Reporter: dholbert, Unassigned)

References

()

Details

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

STR:
 1. Start Nightly from a terminal.
 2. Visit this URL:
http://abcnews.go.com/blogs/business/2013/06/docktowns-floating-homes-in-calif-in-limbo/
 3. Look at your terminal.

ACTUAL RESULTS:
This is continuously spammed to my terminal, seemingly as rapidly as possible:
{
[GFX1-]: Failed to allocate a surface due to invalid size Size(0,0)
[GFX1-]: Failed to allocate a surface due to invalid size Size(0,0)
[GFX1-]: Failed to allocate a surface due to invalid size Size(0,0)
[...]
}
Keywords: regression
(I'm using 64-bit linux, btw.)
In a debug build, I get the following additional output:
{
[Child 9184] ###!!! ASSERTION: 3D transform found between fixedpos content and its viewport (should never happen): 'Error', file /scratch/work/builds/mozilla-inbound/mozilla/layout/base/nsLayoutUtils.cpp, line 1770
[GFX3-]: Surface width or height <= 0!
[GFX3-]: Surface width or height <= 0!
Crash Annotation GraphicsCriticalError: |[0][GFX1-]: Failed to allocate a surface due to invalid size Size(0,0)[GFX1-]: Failed to allocate a surface due to invalid size Size(0,0)
[Parent 32122] WARNING: '!temp', file /scratch/work/builds/mozilla-inbound/mozilla/gfx/layers/basic/BasicCompositor.cpp, line 481
[GFX3-]: Surface width or height <= 0!
[GFX3-]: Surface width or height <= 0!
Crash Annotation GraphicsCriticalError: |[0][GFX1-]: Failed to allocate a surface due to invalid size Size(0,0)|[1][GFX1-]: Failed to allocate a surface due to invalid size Size(0,0)[GFX1-]: Failed to allocate a surface due to invalid size Size(0,0)
[Parent 32122] WARNING: '!temp', file /scratch/work/builds/mozilla-inbound/mozilla/gfx/layers/basic/BasicCompositor.cpp, line 481
[GFX3-]: Surface width or height <= 0!
[GFX3-]: Surface width or height <= 0!
Crash Annotation GraphicsCriticalError: |[0][GFX1-]: Failed to allocate a surface due to invalid size Size(0,0)|[1][GFX1-]: Failed to allocate a surface due to invalid size Size(0,0)|[2][GFX1-]: Failed to allocate a surface due to invalid size Size(0,0)[GFX1-]: Failed to allocate a surface due to invalid size Size(0,0)
[Parent 32122] WARNING: '!temp', file /scratch/work/builds/mozilla-inbound/mozilla/gfx/layers/basic/BasicCompositor.cpp, line 481
[GFX3-]: Surface width or height <= 0!
[GFX3-]: Surface width or height <= 0!
Crash Annotation GraphicsCriticalError: |[0][GFX1-]: Failed to allocate a surface due to invalid size Size(0,0)|[1][GFX1-]: Failed to allocate a surface due to invalid size Size(0,0)|[2][GFX1-]: Failed to allocate a surface due to invalid size Size(0,0)|[3][GFX1-]: Failed to allocate a surface due to invalid size Size(0,0)[GFX1-]: Failed to allocate a surface due to invalid size Size(0,0)
[Parent 32122] WARNING: '!temp', file /scratch/work/builds/mozilla-inbound/mozilla/gfx/layers/basic/BasicCompositor.cpp, line 481
[GFX3-]: Surface width or height <= 0!
[GFX3-]: Surface width or height <= 0!
}

and then the "WARNING", "GFX3", and Crash Annotation lines repeat over and over.

Given the assertion about the 3D-transform just before all the other output, I'm guessing this is a regression from bug 1097464. (the only 3d-transform-related thing in comment 1's regression range)
Blocks: 1097464
Flags: needinfo?(tlee)
Summary: [GFX1-]: Failed to allocate a surface due to invalid size Size(0,0) → abcnews article triggers "[GFX1-]: Failed to allocate a surface due to invalid size Size(0,0)" in terminal
Verified regression from bug 1097464, by performing STR using Linux 64-bit opt builds from bug 1097464's inbound push:
 https://treeherder.mozilla.org/#/jobs?repo=mozilla-inbound&revision=621ab19e86db  (BAD)
...vs the previous push:
 https://treeherder.mozilla.org/#/jobs?repo=mozilla-inbound&revision=7641104770a8 (GOOD)
Thank you for the report!  I will take this bug.
Flags: needinfo?(tlee)
Hi Daniel, I get different result on log.

[Child 1563] ###!!! ASSERTION: 3D transform found between fixedpos content and its viewport (should never happen): 'Error', file /home/thinker/progm/mozilla-central/layout/base/nsLayoutUtils.cpp, line 1792
[Child 1563] ###!!! ASSERTION: 3D transform found between fixedpos content and its viewport (should never happen): 'Error', file /home/thinker/progm/mozilla-central/layout/base/nsLayoutUtils.cpp, line 1792
++DOMWINDOW == 15 (0x7f6ab94f8c00) [pid = 1563] [serial = 15] [outer = 0x7f6aba3bc000]
[Child 1563] ###!!! ASSERTION: 3D transform found between fixedpos content and its viewport (should never happen): 'Error', file /home/thinker/progm/mozilla-central/layout/base/nsLayoutUtils.cpp, line 1792
Flags: needinfo?(dholbert)
If my window is smallish, then I only see those assertions too.  (And in a [non-debug] nightly build, I don't get the error output from comment 0 at all.)

But if I maximize my window (on a 1920x1200 screen), or make it decently large, then I see my assertions from comment 3 as well.

So I think comment 6 may represent another issue entirely (which I hadn't originally noticed because it was buried in the output that I was seeing).
Flags: needinfo?(dholbert)
(In reply to Daniel Holbert [:dholbert] from comment #7)
> So I think comment 6 may represent another issue entirely (which I hadn't
> originally noticed because it was buried in the output that I was seeing).

(Er, I guess comment 6 is the first assertion I quoted in comment 3. Anyway -- that assertion doesn't seem to depend on window-size, whereas the rest do.)
Summary: abcnews article triggers "[GFX1-]: Failed to allocate a surface due to invalid size Size(0,0)" in terminal → abcnews article triggers "[GFX1-]: Failed to allocate a surface due to invalid size Size(0,0)" in terminal, and
Summary: abcnews article triggers "[GFX1-]: Failed to allocate a surface due to invalid size Size(0,0)" in terminal, and → abcnews article triggers "[GFX1-]: Failed to allocate a surface due to invalid size Size(0,0)" in terminal, at large window-sizes
Bug 1097464 was backed out from Fx44, which should be available on the beta channel in the next day or so. Fx45+ remain affected, however.
Daniel, does this still reproduce for you? I can't reproduce on a current trunk build.
Flags: needinfo?(dholbert)
Same -- this is WORKSFORME in latest Nightly 46.0a1 (2016-01-13).  Likely fixed by one of the other dependencies of bug 1097464.
Status: NEW → RESOLVED
Closed: 4 years ago
Flags: needinfo?(dholbert)
Resolution: --- → WORKSFORME
Probably rather by bug 1239137. Not sure why I didn't find this bug when I looked for it.
Actually, it might have been both - one of the other dependencies of bug 1097464 could have fixed the "3D transform found between fixedpos content and its viewport (should never happen)" assertion, and bug 1239137 fixed the Size(0, 0) warning.
Daniel, I don't see it any more.  Do you still reproduce it?  Should we close this bug?
Flags: needinfo?(dholbert)
(In reply to Thinker Li [:sinker] from comment #14)
> Daniel, I don't see it any more.  Do you still reproduce it?  Should we
> close this bug?

Per comment 10 & comment 11, we determined it had been fixed last month, and already closed it as RESOLVED|WORKSFORME.
Flags: needinfo?(dholbert)
You need to log in before you can comment on or make changes to this bug.