Closed Bug 857215 Opened 11 years ago Closed 11 years ago

Loading border-image/repeat-image-1.html in xvfb triggers crash with "Fatal IO error 11 (Resource temporarily unavailable) on X server :99"

Categories

(Core :: Graphics, defect)

x86_64
Linux
defect
Not set
critical

Tracking

()

RESOLVED WORKSFORME

People

(Reporter: dholbert, Unassigned)

Details

(Keywords: crash, regression)

STR:
 0. Install the package 'xvfb' (on e.g. Ubuntu 12.10)
 1. In a debug build's objdir, run the following:
   $ mkdir tmpProfile
   $ xvfb-run ./dist/bin/firefox -profile tmpProfile/ -no-remote https://mxr.mozilla.org/mozilla-central/source/layout/reftests/border-image/repeat-image-1.html

(replace with path to your local srcdir's copy of 'repeat-image-1.html' if you like)

ACTUAL RESULTS: Crash, with this output:
{
Xlib:  extension "RANDR" missing on display ":99".
++DOCSHELL 0x7f9c505b3400 == 1 [id = 1]
++DOMWINDOW == 1 (0x7f9c518b90b8) [serial = 1] [outer = (nil)]
++DOMWINDOW == 2 (0x7f9c5122b4b8) [serial = 2] [outer = 0x7f9c518b90b8]
pldhash: for the table at address 0x7f9c6c4dcec8, the given entrySize of 168 definitely favors chaining over double hashing.
++DOCSHELL 0x7f9c450f4800 == 2 [id = 2]
++DOMWINDOW == 3 (0x7f9c450f60b8) [serial = 3] [outer = (nil)]
++DOMWINDOW == 4 (0x7f9c450f74b8) [serial = 4] [outer = 0x7f9c450f60b8]
++DOMWINDOW == 5 (0x7f9c44fa04b8) [serial = 5] [outer = 0x7f9c518b90b8]
WARNING: OpenGL-accelerated layers are not supported on this system.: file /scratch/work/builds/mozilla-central/mozilla-central.12-12-07.08-13/mozilla/widget/xpwidgets/nsBaseWidget.cpp, line 849
WARNING: Unable to test style tree integrity -- no content node: file /scratch/work/builds/mozilla-central/mozilla-central.12-12-07.08-13/mozilla/layout/base/nsCSSFrameConstructor.cpp, line 8245
LoadPlugin() /usr/lib/flashplugin-installer/libflashplayer.so returned 7f9c442b9ee0
LoadPlugin() /opt/google/talkplugin/libnpgoogletalk.so returned 7f9c44f64bb0
LoadPlugin() /opt/google/talkplugin/libnpgtpo3dautoplugin.so returned 7f9c44227040
LoadPlugin() /opt/google/talkplugin/libnpo1d.so returned 7f9c4421a940
LoadPlugin() /usr/lib/mozilla/plugins/librhythmbox-itms-detection-plugin.so returned 7f9c4421ab80
LoadPlugin() /usr/lib/mozilla/plugins/libgnome-shell-browser-plugin.so returned 7f9c4421acd0
LoadPlugin() /usr/lib/mozilla/plugins/libtotem-gmp-plugin.so returned 7f9c43676550
LoadPlugin() /usr/lib/mozilla/plugins/libtotem-narrowspace-plugin.so returned 7f9c43688ee0
LoadPlugin() /usr/lib/mozilla/plugins/libtotem-cone-plugin.so returned 7f9c43691880
LoadPlugin() /usr/lib/mozilla/plugins/libtotem-mully-plugin.so returned 7f9c436979d0
++DOCSHELL 0x7f9c3a274c00 == 3 [id = 3]
++DOMWINDOW == 6 (0x7f9c4ef6acb8) [serial = 6] [outer = (nil)]
++DOCSHELL 0x7f9c3a2eb400 == 4 [id = 4]
++DOMWINDOW == 7 (0x7f9c3a2ec0b8) [serial = 7] [outer = (nil)]
WARNING: NS_ENSURE_SUCCESS(rv, rv) failed with result 0x80040111: file /scratch/work/builds/mozilla-central/mozilla-central.12-12-07.08-13/mozilla/content/base/src/nsFrameLoader.cpp, line 387
++DOCSHELL 0x7f9c39b5f800 == 5 [id = 5]
++DOMWINDOW == 8 (0x7f9c39b604b8) [serial = 8] [outer = (nil)]
WARNING: NS_ENSURE_SUCCESS(rv, rv) failed with result 0x80040111: file /scratch/work/builds/mozilla-central/mozilla-central.12-12-07.08-13/mozilla/content/base/src/nsFrameLoader.cpp, line 387
++DOMWINDOW == 9 (0x7f9c399fc0b8) [serial = 9] [outer = 0x7f9c39b604b8]
WARNING: NS_ENSURE_TRUE(NS_SUCCEEDED(rv) && subjPrincipal) failed: file /scratch/work/builds/mozilla-central/mozilla-central.12-12-07.08-13/mozilla/docshell/base/nsDocShell.cpp, line 8400
WARNING: OpenGL-accelerated layers are not supported on this system.: file /scratch/work/builds/mozilla-central/mozilla-central.12-12-07.08-13/mozilla/widget/xpwidgets/nsBaseWidget.cpp, line 849
WARNING: Subdocument container has no frame: file /scratch/work/builds/mozilla-central/mozilla-central.12-12-07.08-13/mozilla/layout/base/nsDocumentViewer.cpp, line 2388
++DOMWINDOW == 10 (0x7f9c399180b8) [serial = 10] [outer = 0x7f9c4ef6acb8]
WARNING: Subdocument container has no frame: file /scratch/work/builds/mozilla-central/mozilla-central.12-12-07.08-13/mozilla/layout/base/nsDocumentViewer.cpp, line 2388
++DOMWINDOW == 11 (0x7f9c399f9cb8) [serial = 11] [outer = 0x7f9c3a2ec0b8]
++DOMWINDOW == 12 (0x7f9c39dac8b8) [serial = 12] [outer = 0x7f9c39b604b8]
WARNING: NS_ENSURE_TRUE(mMutable) failed: file /scratch/work/builds/mozilla-central/mozilla-central.12-12-07.08-13/mozilla/netwerk/base/src/nsSimpleURI.cpp, line 265
++DOMWINDOW == 13 (0x7f9c3511b8b8) [serial = 13] [outer = 0x7f9c39b604b8]
WARNING: NS_ENSURE_TRUE(currentURI) failed: file /scratch/work/builds/mozilla-central/mozilla-central.12-12-07.08-13/mozilla/content/base/src/ThirdPartyUtil.cpp, line 96
firefox: Fatal IO error 11 (Resource temporarily unavailable) on X server :99.
nsStringStats
 => mAllocCount:          70103
 => mReallocCount:         5581
 => mFreeCount:           57133  --  LEAKED 12970 !!!
 => mShareCount:          46064
 => mAdoptCount:           1992
 => mAdoptFreeCount:       1988  --  LEAKED 4 !!!
}

Note in particular this error:
> firefox: Fatal IO error 11 (Resource temporarily unavailable) on X server :99.

(This is blocking me from doing in-the-background reftest runs on my linux box, FWIW -- that's how I ran up against this.  The full reftest run makes it to 15% of the way through the suite, and then it hits this test and aborts/crashes).
I tried to catch this in GDB -- in particular, I loaded a page that waits 20 seconds and then redirects to repeat-image-1.html, and during that delay I look up the PID w/ pgrep and I attach GDB to that PID.

But it seems to crash in a way that GDB can't catch. When it crashes, GDB just prints this:

> [Inferior 1 (process 29921) exited with code 01]

...where 29921 is the pid of the firefox process that I attached GDB to.
Severity: normal → critical
I can reproduce this with nightly & release builds on the same machine, FWIW (my Lenovo Thinkpad W530, running Ubuntu 12.10), and an old Firefox 17 release that I have handy:

Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/17.0 Firefox/17.0
Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:19.0) Gecko/20100101 Firefox/19.0
Mozilla/5.0 (X11; Linux x86_64; rv:23.0) Gecko/20130403 Firefox/23.0

...but: I could not reproduce in an old Firefox 9.0 build that I have lying around:
Mozilla/5.0 (X11; Linux x86_64; rv:9.0) Gecko/20100101 Firefox/9.0

So, this appears to be a regression (though not an extremely recent one).

Also, I was unable to reproduce on my work desktop machine (running Ubuntu 13.04), so there may be some hardware/OS-version specific aspect to this bug.
Keywords: regression
mozregression gives me this regression range:
{
Last good nightly: 2012-05-31
First bad nightly: 2012-06-01

Pushlog:
http://hg.mozilla.org/mozilla-central/pushloghtml?fromchange=3aa566994890&tochange=73783bf75c4c
}
d'oh.. that regression range includes "unprefix the border-image-* properties".  So, old builds simply don't recognize the unprefixed property-names in comment 0's MXR link. 

The "working" old builds (2012-05-31 nightly and my Firefox 9 build) both fail if I use an older version of the reftest with prefixed property-names.
I've now upgraded this system to Ubuntu 13.04, and I can't reproduce the bug anymore.

It could've been an xvfb bug, or a graphics driver bug, a hard-to-trigger firefox bug, or a combination of any of these...  No sense in leaving this open when I can't reproduce anymore, though, so resolving as WFM.
Status: NEW → RESOLVED
Closed: 11 years ago
Resolution: --- → WORKSFORME
You need to log in before you can comment on or make changes to this bug.