Closed Bug 632867 Opened 14 years ago Closed 14 years ago

Firefox Beta 11 crash in glXQueryVersion [@ libc-2.12.2.so@0x33b45]

Categories

(Core :: Graphics: CanvasWebGL, defect)

x86_64
Linux
defect
Not set
critical

Tracking

()

RESOLVED FIXED
Tracking Status
blocking2.0 --- betaN+

People

(Reporter: marcia, Assigned: bjacob)

References

Details

(Keywords: crash, topcrash, Whiteboard: [hardblocker][has patch])

Crash Data

Attachments

(2 files)

This bug was filed from the Socorro interface and is report bp-9ba1f89e-55db-4cdb-a270-e84cc2110208 . ============================================================= Seen while reviewing crash stats. In early B11 data this shows as the #11 crash. http://tinyurl.com/676f2lf to the crashes which are all linux. Frame Module Signature [Expand] Source 0 libc-2.12.2.so libc-2.12.2.so@0x33b45 1 libc-2.12.2.so libc-2.12.2.so@0x37495 2 libc-2.12.2.so libc-2.12.2.so@0xd1748 3 libc-2.12.2.so libc-2.12.2.so@0x71fd2 4 libc-2.12.2.so libc-2.12.2.so@0xd1748 5 libc-2.12.2.so libc-2.12.2.so@0x71fd2 Some comments indicate crashing on http://html5test.com/ and in full screen mode.
It is #1 top crasher on Linux in 4.0b11. Another comment says: "Entering mmo-champion.com while using Ubuntu Unity."
blocking2.0: --- → ?
Keywords: topcrash
Hardware: All → x86_64
Whiteboard: crash
2 of my colleagues are seeing the same crash on http://sourceforge.net/projects/flac/files/
Here is a backtrace of the crashing thread with --sync: #0 0x00007ffff51bfb45 in raise (sig=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64 resultvar = 0 pid = <value optimized out> selftid = <value optimized out> #1 0x00007ffff51c3496 in abort () at abort.c:92 save_stage = 2 act = {__sigaction_handler = {sa_handler = 0, sa_sigaction = 0}, sa_mask = {__val = {0, 140737488343200, 0, 0, 0, 0, 0, 140737488343112, 140737488343120, 140737488343128, 140737306285897, 0, 140737305894867, 140737488343216, 140737306285897, 0}}, sa_flags = -182460461, sa_restorer = 0xdf} sigs = {__val = {32, 0 <repeats 15 times>}} #2 0x00007ffff35c5f2a in mozalloc_abort (msg=<value optimized out>) at /build/buildd/firefox-4.0~b11+build3+nobinonly/build-tree/mozilla/memory/mozalloc/mozalloc_abort.cpp:75 No locals. #3 0x00007ffff6d69d84 in Abort (aSeverity=<value optimized out>, aStr=0x7fffc8575e58 "X_GLXVendorPrivateWithReply: BadLength (poly request too large or internal Xlib length error)", aExpr=<value optimized out>, aFile=0x7ffff71ac0fe "/build/buildd/firefox-4.0~b11+build3+nobinonly/build-tree/mozilla/toolkit/xre/nsX11ErrorHandler.cpp", aLine=190) at /build/buildd/firefox-4.0~b11+build3+nobinonly/build-tree/mozilla/xpcom/base/nsDebugImpl.cpp:391 No locals. #4 NS_DebugBreak_P (aSeverity=<value optimized out>, aStr=0x7fffc8575e58 "X_GLXVendorPrivateWithReply: BadLength (poly request too large or internal Xlib length error)", aExpr=<value optimized out>, aFile=0x7ffff71ac0fe "/build/buildd/firefox-4.0~b11+build3+nobinonly/build-tree/mozilla/toolkit/xre/nsX11ErrorHandler.cpp", aLine=190) at /build/buildd/firefox-4.0~b11+build3+nobinonly/build-tree/mozilla/xpcom/base/nsDebugImpl.cpp:378 buf = { buffer = "###!!! ABORT: X_GLXVendorPrivateWithReply: BadLength (poly request too large or internal Xlib length error): file /build/buildd/firefox-4.0~b11+build3+nobinonly/build-tree/mozilla/toolkit/xre/nsX11Err"..., curlen = 223} ll = PR_LOG_ALWAYS sevString = <value optimized out> #5 0x00007ffff6390eea in X11Error (display=0x7fffebf47000, event=<value optimized out>) at /build/buildd/firefox-4.0~b11+build3+nobinonly/build-tree/mozilla/toolkit/xre/nsX11ErrorHandler.cpp:190 notes = {<nsFixedCString> = {<nsCString> = {<nsACString_internal> = { mData = 0x7fffc8575e58 "X_GLXVendorPrivateWithReply: BadLength (poly request too large or internal Xlib length error)", mLength = 93, mFlags = 65541}, <No data fields>}, mFixedCapacity = 63, mFixedBuf = 0x7fffffffbc50 "X_GLXVendorPrivateWithReply: "}, mStorage = "X_GLXVendorPrivateWithReply: \000\000\000\000\000\000\000 \000\000\000\220\220\366\353\377\177\000\000@\200\366\353\377\177\000\000t\200\366\353\377\177\000"} buffer = "BadLength (poly request too large or internal Xlib length error)", '\000' <repeats 1983 times> age = 1 message = {<nsFixedCString> = {<nsCString> = {<nsACString_internal> = { mData = 0x7fffffffbbf0 "GLX.17", mLength = 6, mFlags = 65553}, <No data fields>}, mFixedCapacity = 63, mFixedBuf = 0x7fffffffbbf0 "GLX.17"}, mStorage = "GLX.17\000\000X\203\374\367\377\177\000\000\200\275\377\377\377\177\000\000 \327\373\367\377\177\000\000\240\275\377\377\377\177\000\000\000\200\374\367\377\177\000\000Wۓ\034\000\000\000\000\253r@\000\000\000\000"} #6 0x00007ffff273df97 in _XError (dpy=0x7fffebf47000, rep=0x7fffc87e4be0) at ../../src/XlibInt.c:3103 rtn_val = <value optimized out> event = {type = 0, xany = {type = 0, serial = 140737152053248, send_event = 16783084, display = 0xbc31, window = 140737137187600}, xkey = {type = 0, serial = 140737152053248, send_event = 16783084, display = 0xbc31, window = 140737137187600, root = 140737152053248, subwindow = 140736557108192, time = 4224563, x = 48177, y = 0, x_root = 0, y_root = 0, state = 3365624576, keycode = 32767, same_screen = -336302080}, xbutton = {type = 0, serial = 140737152053248, send_event = 16783084, display = 0xbc31, window = 140737137187600, root = 140737152053248, subwindow = 140736557108192, time = 4224563, x = 48177, y = 0, x_root = 0, y_root = 0, state = 3365624576, button = 32767, same_screen = -336302080}, xmotion = { type = 0, serial = 140737152053248, send_event = 16783084, display = 0xbc31, window = 140737137187600, root = 140737152053248, subwindow = 140736557108192, time = 4224563, x = 48177, y = 0, x_root = 0, y_root = 0, state = 3365624576, is_hint = -1 '\377', same_screen = -336302080}, xcrossing = {type = 0, serial = 140737152053248, send_event = 16783084, display = 0xbc31, window = 140737137187600, root = 140737152053248, subwindow = 140736557108192, time = 4224563, x = 48177, y = 0, x_root = 0, y_root = 0, mode = -929342720, detail = 32767, same_screen = -336302080, focus = 32767, state = 3363720160}, xfocus = {type = 0, serial = 140737152053248, send_event = 16783084, display = 0xbc31, window = 140737137187600, mode = -336302080, detail = 32767}, xexpose = {type = 0, serial = 140737152053248, send_event = 16783084, display = 0xbc31, window = 140737137187600, x = -336302080, y = 32767, width = -931247136, height = 32767, count = 4224563}, xgraphicsexpose = {type = 0, serial = 140737152053248, send_event = 16783084, display = 0xbc31, drawable = 140737137187600, x = -336302080, y = 32767, width = -931247136, height = 32767, count = 4224563, major_code = 0, minor_code = 48177}, xnoexpose = {type = 0, serial = 140737152053248, send_event = 16783084, display = 0xbc31, drawable = 140737137187600, major_code = -336302080, minor_code = 32767}, xvisibility = {type = 0, serial = 140737152053248, send_event = 16783084, display = 0xbc31, window = 140737137187600, state = -336302080}, xcreatewindow = {type = 0, serial = 140737152053248, send_event = 16783084, display = 0xbc31, parent = 140737137187600, window = 140737152053248, x = -931247136, y = 32767, width = 4224563, height = 0, border_width = 48177, override_redirect = 0}, xdestroywindow = {type = 0, serial = 140737152053248, send_event = 16783084, display = 0xbc31, event = 140737137187600, window = 140737152053248}, xunmap = {type = 0, serial = 140737152053248, send_event = 16783084, display = 0xbc31, event = 140737137187600, window = 140737152053248, from_configure = -931247136}, xmap = {type = 0, serial = 140737152053248, send_event = 16783084, display = 0xbc31, event = 140737137187600, window = 140737152053248, override_redirect = -931247136}, xmaprequest = {type = 0, serial = 140737152053248, send_event = 16783084 , display = 0xbc31, parent = 140737137187600, window = 140737152053248}, xreparent = {type = 0, serial = 140737152053248, send_event = 16783084, display = 0xbc31, event = 140737137187600, window = 140737152053248, parent = 140736557108192, x = 4224563, y = 0, override_redirect = 48177}, xconfigure = {type = 0, serial = 140737152053248, send_event = 16783084, display = 0xbc31, event = 140737137187600, window = 140737152053248, x = -931247136, y = 32767, width = 4224563, height = 0, border_width = 48177, above = 0, override_redirect = -929342720}, xgravity = {type = 0, serial = 140737152053248, send_event = 16783084, display = 0xbc31, event = 140737137187600, window = 140737152053248, x = -931247136, y = 32767}, xresizerequest = {type = 0, serial = 140737152053248, send_event = 16783084, display = 0xbc31, window = 140737137187600, width = -336302080, height = 32767}, xconfigurerequest = {type = 0, serial = 140737152053248, send_event = 16783084, display = 0xbc31, parent = 140737137187600, window = 140737152053248, x = -931247136, y = 32767, width = 4224563, height = 0, border_width = 48177, above = 0, detail = -929342720, value_mask = 140737152053248}, xcirculate = {type = 0, serial = 140737152053248, send_event = 16783084, display = 0xbc31, event = 140737137187600, window = 140737152053248, place = -931247136}, xcirculaterequest = {type = 0, serial = 140737152053248, send_event = 16783084, display = 0xbc31, parent = 140737137187600, window = 140737152053248, place = -931247136}, xproperty = {type = 0, serial = 140737152053248, send_event = 16783084, display = 0xbc31, window = 140737137187600, atom = 140737152053248, time = 140736557108192, state = 4224563}, xselectionclear = {type = 0, serial = 140737152053248, send_event = 16783084, display = 0xbc31, window = 140737137187600, selection = 140737152053248, time = 140736557108192}, xselectionrequest = {type = 0, serial = 140737152053248, send_event = 16783084, display = 0xbc31, owner = 140737137187600, requestor = 140737152053248, selection = 140736557108192, target = 4224563, property = 48177, time = 0}, xselection = {type = 0, serial = 140737152053248, send_event = 16783084, display = 0xbc31, requestor = 140737137187600, selection = 140737152053248, target = 140736557108192, property = 4224563, time = 48177}, xcolormap = {type = 0, serial = 140737152053248, send_event = 16783084, display = 0xbc31, window = 140737137187600, colormap = 140737152053248, new = -931247136, state = 32767}, xclient = {type = 0, serial = 140737152053248, send_event = 16783084, display = 0xbc31, window = 140737137187600, message_type = 140737152053248, format = -931247136, data = { b = "3v@\000\000\000\000\000\061\274\000\000\000\000\000\000\000\000\000", s = {30259, 64, 0, 0, -17359, 0, 0, 0, 0, 0}, l = {4224563, 48177, 0, 140736559012608, 140737152053248}}}, xmapping = {type = 0, serial = 140737152053248, send_event = 16783084, display = 0xbc31, window = 140737137187600, request = -336302080, first_keycode = 32767, count = -931247136}, xerror = {type = 0, display = 0x7fffebf47000, resourceid = 16783084, serial = 48177, error_code = 16 '\020', request_code = 155 '\233', minor_code = 17 '\021'}, xkeymap = {type = 0, serial = 140737152053248, send_event = 16783084, display = 0xbc31, window = 140737137187600, key_vector = "\000p\364\353\377\177\000\000\340K~\310\377\177\000\000\063v@\000\000\000\000\000\061\274\000\000\000\000\000"}, xgeneric = {type = 0, serial = 140737152053248, send_event = 16783084, display = 0xbc31, extension = -351167728, evtype = 32767}, xcookie = {type = 0, serial = 140737152053248, send_event = 16783084, display = 0xbc31, extension = -351167728, evtype = 32767, cookie = 3958665216, data = 0x7fffc87e4be0}, pad = {281479271677952, 140737152053248, 16783084, 48177, 140737137187600, 140737152053248, 140736557108192, 4224563, 48177, 0, 140736559012608, 140737152053248, 140736557108192, 1, 48177, 140737261095246, 48176, 0, 140737488338400, 140737152188416, 0, 0, 5, 140737152053248}} async = <value optimized out> next = <value optimized out> #7 0x00007ffff27450e8 in _XReply (dpy=0x7fffebf47000, rep=<value optimized out>, extra=0, discard=0) at ../../src/xcb_io.c:513 ext = 0x0 err = 0x7fffc87e4be0 ret_code = <value optimized out> error = 0x7fffc87e4be0 c = <value optimized out> reply = <value optimized out> __PRETTY_FUNCTION__ = "_XReply" #8 0x00007fffeea84e7a in getFBConfigs (psc=0x7fffc8522b60, screen=0, priv=0x7fffc858bf40) at glxext.c:702 dpy = 0x7fffebf47000 fb_req = <value optimized out> sgi_req = <value optimized out> vpreq = <value optimized out> reply = {type = 0 '\000', unused = 16 '\020', sequenceNumber = 48177, length = 16783084, numFBConfigs = 10158097, numAttribs = 0, pad3 = 0, pad4 = 0, pad5 = 0, pad6 = 0} #9 glx_screen_init (psc=0x7fffc8522b60, screen=0, priv=0x7fffc858bf40) at glxext.c:726 No locals. #10 0x00007fffeeaa995f in dri2CreateScreen (screen=0, priv=0x7fffc858bf40) at dri2_glx.c:786 driver_configs = <value optimized out> extensions = <value optimized out> pdp = 0x7fffc8abb830 psc = 0x7fffc8522b60 psp = <value optimized out> driverName = <value optimized out> deviceName = <value optimized out> magic = <value optimized out> i = <value optimized out> #11 0x00007fffeea85278 in AllocAndFetchScreenConfigs (dpy=0x7fffebf47000) at glxext.c:760 psc = 0x0 i = <value optimized out> screens = 1 #12 __glXInitialize (dpy=0x7fffebf47000) at glxext.c:859 dpyPriv = 0x7fffc858bf40 d = <value optimized out> glx_direct = 1 glx_accel = 1 i = <value optimized out> #13 0x00007fffeea814b9 in glXQueryVersion (dpy=<value optimized out>, major=0x7ffff7dd9394, minor=0x7ffff7dd9398) at glxcmds.c:395 priv = <value optimized out> #14 0x00007ffff6de7775 in mozilla::gl::GLXLibrary::EnsureInitialized (this=0x7ffff7dd92f0) at /build/buildd/firefox-4.0~b11+build3+nobinonly/build-tree/mozilla/gfx/thebes/GLContextProviderGLX.cpp:167 symbols13_ext = {{symPointer = 0x7ffff7dd9310, symNames = {0x7ffff7351193 "glXChooseFBConfigSGIX", 0x0, 0x0, 0x0, 0x0}}, {symPointer = 0x7ffff7dd9330, symNames = { 0x7ffff73511a9 "glXGetFBConfigAttribSGIX", 0x0, 0x0, 0x0, 0x0}}, {symPointer = 0x7ffff7dd9328, symNames = {0x7ffff7351145 "glXGetVisualFromFBConfig", 0x0, 0x0, 0x0, 0x0}}, { symPointer = 0x7ffff7dd9358, symNames = {0x7ffff73511c2 "glXCreateGLXPixmapWithConfigSGIX", 0x0, 0x0, 0x0, 0x0}}, {symPointer = 0x7ffff7dd9360, symNames = { 0x7ffff73511e3 "glXDestroyGLXPixmap", 0x0, 0x0, 0x0, 0x0}}, {symPointer = 0x7ffff7dd9320, symNames = {0x7ffff73511f7 "glXCreateContextWithConfigSGIX", 0x0, 0x0, 0x0, 0x0}}, { symPointer = 0x0, symNames = {0x0, 0x0, 0x0, 0x0, 0x0}}} sym13 = <value optimized out> symbols13 = {{symPointer = 0x7ffff7dd9310, symNames = {0x7ffff735110e "glXChooseFBConfig", 0x0, 0x0, 0x0, 0x0}}, {symPointer = 0x7ffff7dd9330, symNames = {0x7ffff7351120 "glXGetFBConfigAttrib", 0x0, 0x0, 0x0, 0x0}}, {symPointer = 0x7ffff7dd9318, symNames = { 0x7ffff7351135 "glXGetFBConfigs", 0x0, 0x0, 0x0, 0x0}}, {symPointer = 0x7ffff7dd9328, symNames = {0x7ffff7351145 "glXGetVisualFromFBConfig", 0x0, 0x0, 0x0, 0x0}}, { symPointer = 0x7ffff7dd9350, symNames = {0x7ffff735115e "glXCreatePixmap", 0x0, 0x0, 0x0, 0x0}}, { symPointer = 0x7ffff7dd9360, symNames = {0x7ffff735116e "glXDestroyPixmap", 0x0, 0x0, 0x0, 0x0}}, {symPointer = 0x7ffff7dd9320, symNames = {0x7ffff735117f "glXCreateNewContext", 0x0, 0x0, 0x0, 0x0}}, {symPointer = 0x0, symNames = {0x0, 0x0, 0x0, 0x0, 0x0}}} symbols14_ext = {{symPointer = 0x7ffff7dd9308, symNames = {0x7ffff7351228 "glXGetProcAddressARB", 0x0, 0x0, 0x0, 0x0}}, {symPointer = 0x0, symNames = {0x0, 0x0, 0x0, 0x0, 0x0}}} display = 0x7fffebf47000 screen = 0 serverVersionStr = <value optimized out> sym14 = <value optimized out> symbols = {{symPointer = 0x7ffff7dd92f0, symNames = {0x7ffff735108b "glXDestroyContext", 0x0, 0x0, 0x0, 0x0}}, {symPointer = 0x7ffff7dd92f8, symNames = {0x7ffff735109d "glXMakeCurrent", 0x0, 0x0, 0x0, 0x0}}, {symPointer = 0x7ffff7dd9338, symNames = {0x7ffff73510ac "glXSwapBuffers", 0x0, 0x0, 0x0, 0x0}}, {symPointer = 0x7ffff7dd9370, symNames = { 0x7ffff73510bb "glXQueryVersion", 0x0, 0x0, 0x0, 0x0}}, {symPointer = 0x7ffff7dd9300, symNames = {0x7ffff73510cb "glXGetCurrentContext", 0x0, 0x0, 0x0, 0x0}}, { symPointer = 0x7ffff7dd9340, symNames = {0x7ffff73510e0 "glXQueryExtensionsString", 0x0, 0x0, 0x0, 0x0}}, {symPointer = 0x7ffff7dd9348, symNames = {0x7ffff73510f9 "glXQueryServerString", 0x0, 0x0, 0x0, 0x0}}, {symPointer = 0x0, symNames = {0x0, 0x0, 0x0, 0x0, 0x0}}} symbols14 = {{symPointer = 0x7ffff7dd9308, symNames = {0x7ffff7351216 "glXGetProcAddress", 0x0, 0x0, 0x0, 0x0}}, {symPointer = 0x0, symNames = {0x0, 0x0, 0x0, 0x0, 0x0}}} vendor = <value optimized out> extensionsStr = <value optimized out> #15 0x00007ffff6de797d in mozilla::gl::CreateOffscreenPixmapContext (aFormat=..., aShare=1, aSize=<value optimized out>) at /build/buildd/firefox-4.0~b11+build3+nobinonly/build-tree/mozilla/gfx/thebes/GLContextProviderGLX.cpp:552 xsurface = {mRawPtr = 0x7fffce714c00} display = 0x0 attribs = {-15008, 32767, -163256563, 21, -153746296, 32767, -336037696, 0, -410364256, 32767, -14760, 32767, -336037696, 32767, -176885556, 32767, -148273696} cfgs = {mPtr = 0x7fffe78a9f60} chosenIndex = <value optimized out> xErrorHandler = {mXError = {mError = {type = 0, display = 0x7ffff574f4d0, resourceid = 140737152317632, serial = 0, error_code = 192 '\300', request_code = 120 'x', minor_code = 248 '\370'}}, static sXErrorPtr = 0x0, mOldXErrorPtr = 0x7ffff6d5f2da, mOldErrorHandler = 0x7fff80040154} numConfigs = 32767 vinfo = {mPtr = 0x7fffebf878c0} glxpixmap = <value optimized out> error = <value optimized out> glContext = {mRawPtr = 0x7fffebf1bf30} #16 0x00007ffff6de7c8c in mozilla::gl::GLContextProviderGLX::CreateOffscreen (aSize=..., aFormat=<value optimized out>) at /build/buildd/firefox-4.0~b11+build3+nobinonly/build-tree/mozilla/gfx/thebes/GLContextProviderGLX.cpp:672 glContext = {mRawPtr = 0x1} #17 0x00007ffff6670ae5 in mozilla::WebGLContext::SetDimensions (this=0x7fffc9505800, width=300, height=150) at /build/buildd/firefox-4.0~b11+build3+nobinonly/build-tree/mozilla/content/canvas/src/WebGLContext.cpp:477 preferEGL = 0 prefService = {<nsCOMPtr_base> = {mRawPtr = 0x7fffe78a9f78}, <No data fields>} verbose = 0 preferOpenGL = 0 useOpenGL = <value optimized out> useANGLE = <value optimized out> gfxInfo = {<nsCOMPtr_base> = {mRawPtr = 0x0}, <No data fields>} format = {static BasicRGBA32Format = { static BasicRGBA32Format = <same as static member of an already seen type>, depth = 0, minDepth = 0, stencil = 0, minStencil = 0, red = 8, minRed = 1, green = 8, minGreen = 1, blue = 8, minBlue = 1, alpha = 8, minAlpha = 1}, depth = 24, minDepth = 16, stencil = 0, minStencil = 0, red = 8, minRed = 1, green = 8, minGreen = 1, blue = 8, minBlue = 1, alpha = 8, minAlpha = 1} forceOSMesa = 0 forceEnabled = 0 #18 0x00007ffff66b9cc8 in nsHTMLCanvasElement::UpdateContext (this=<value optimized out>, aNewContextOptions=0x0) at /build/buildd/firefox-4.0~b11+build3+nobinonly/build-tree/mozilla/content/html/content/src/nsHTMLCanvasElement.cpp:611 rv = <value optimized out> sz = {width = 300, height = 150} #19 0x00007ffff66ba527 in nsHTMLCanvasElement::GetContext (this=0x7fffc8575dc0, aContextId=..., aContextOptions=<value optimized out>, aContext=0x7fffffffc8f0) at /build/buildd/firefox-4.0~b11+build3+nobinonly/build-tree/mozilla/content/html/content/src/nsHTMLCanvasElement.cpp:534 cp = 0x7ffff7daf8a8 contextProps = {<nsCOMPtr_base> = {mRawPtr = 0x0}, <No data fields>} rv = <value optimized out> #20 0x00007ffff6a1dad0 in nsIDOMHTMLCanvasElement_GetContext (cx=0x7fffce714c00, argc=1, vp=0x7fffe1efe270) at dom_quickstubs.cpp:20394 rv = <value optimized out> obj = 0x7fffcd90fb00 callee = 0x6 self = 0x7fffc8575e28 selfref = {ptr = 0x0} arg0 = {<xpc_qsBasicString<nsAString_internal, nsDependentString>> = {mBuf = {0x7fffc8bb4dd0, 0x100000012}, mValid = 1}, <No data fields>} helper = {<xpcObjectHelper> = {mCanonicalStrong = {<nsCOMPtr_base> = { mRawPtr = 0x0}, <No data fields>}, mCanonical = 0x0, mObject = 0x0, mCache = 0x0, mClassInfo = {<nsCOMPtr_base> = {mRawPtr = 0x0}, <No data fields>}, mXPCClassInfo = {mRawPtr = 0x0}, mIsNode = 0}, <No data fields>} lccx = {mCallBeginRequest = XPCLazyCallContext::DONT_CALL_BEGINREQUEST, mCcx = 0x0, mCcxToDestroy = 0x0, mCx = 0x7fffce714c00, mCallerLanguage = XPCContext::LANG_JS, mObj = 0x7fffcd90fb00, mCurrentJSObject = 0x7fffcd90fb00, mWrapper = 0x0, mTearOff = 0x0, mData = "\320\341\307\367\377\177\000\000\003\000\000\000\377\177\000\000\000\000\000\000\000\000\000\000`\275\203\347\377\177\000\000\200;$\317\377\177\000\000\000Lq\316\377\177\000\000\000\000\000\000\000\000\000\000\001", '\000' <repeats 15 times>, "xt\271\310\377\177\000\000xt\271\310\377\177\000\000xt\271\310\377\177\000\000p\224\377\326\377\177\000\000\000\000\000\000\000\000\000\000 \224\345\322\377\177\000\000\200\271\273\310\377\177\000\000@\000\000\000\r", '\000' <repeats 11 times>, "P\356n\310\377\177\000\000]\000\000\000\000\000\000\000\020\312\377\377\377\177\000\000@ʂ\313\377\177\000\000\027)z\366\255\336\000\000\000\000\000\000\000\000\000\000>\266y\366\377\177\000\000$\024A\201\377\263\314\002\000\000\000\000\001\000\000\000\213|$0M\205\377\017\204\023\000\000\000M\213g\000\000\000\000\377\177\000"} argv = <value optimized out> arg1 = 18444773748872577024 result = {<nsCOMPtr_base> = {mRawPtr = 0x0}, <No data fields>} #21 0x00007ffff70497ef in CallJSNative (this=0x7fffffffd070) at /build/buildd/firefox-4.0~b11+build3+nobinonly/build-tree/mozilla/js/src/jscntxtinlines.h:697 ok = <value optimized out> #22 CallCompiler::generateNativeStub (this=0x7fffffffd070) at /build/buildd/firefox-4.0~b11+build3+nobinonly/build-tree/mozilla/js/src/methodjit/MonoIC.cpp:667 jit = 0x7fffcb82c800 vpReg = <value optimized out> vp = 0x7fffe1efe270 obj = 0x7fffcd913e80 fun = 0x7fffcd913e80 masm = {<js::mjit::PunboxAssembler> = {<JSC::MacroAssembler> = {<JSC::MacroAssemblerX86_64> = {<JSC::MacroAssemblerX86Common> = {<JSC::AbstractMacroAssembler<JSC::X86Assembler>> = {m_assembler = {m_formatter = { static maxInstructionSize = 16, static noBase = JSC::X86Registers::ebp, static hasSib = JSC::X86Registers::esp, static noIndex = JSC::X86Registers::esp, static noBase2 = JSC::X86Registers::r13, static hasSib2 = JSC::X86Registers::r12, m_buffer = {static inlineCapacity = 256, m_inlineBuffer = "@\353j\337\377\177\000\000xt\271\310\377\177\000\000\000Lq\316\377\177\000\000\250\314\377\377\377\177\000\000\250\314\377\377\377\177\000\000\r\310y\366\377\177\000\000\250\314\377\377\377\177\000\000\274\314\377\377\377\177\000\000(\315\377\377\377\177\000\000\000\000\000\000\000\000\000\000H\313\377\377\377\177\000\000\027)z\366\377\177\000\000\000\000\000\000\000\000\000\000>\266y\366\377\177\000\000\377\377\000\200\000\000\000\000p\224\377\326\001\000\000\000\250\314\377\377\377\177\000\000\034#y\366\377\177\000\000\300\314\377\377\377\177\000\000\350\313\377\377\377\177\000\000ɹ\233\366\377\177\000\000\340w\363\326\377\177\000\000\370\313\377\377\377\177\000\000\300H\205\337\377\177\000\000\000\373\220\315\377\177\000\000\000Lq\316\377\177\000\000\001", '\000' <repeats 15 times>, "@\357\331\310\377\177\000\000\256\276y\366\377\177\000\000\250\314\377\377\377\177\000\000\274\314\377\377\377\177\000", m_buffer = 0x7ffff69bbadd "\205\300u,H\215T$\b1\311L\211\376L\211\347@\265\001\350n\376\377\377\205\300t\023H\213D$\030H9D$\b@\017\225\305\353\003@\265\001@\017\266\355\270\001", m_capacity = 0, m_size = 0, m_oom = false}}}}, static DoubleConditionBitInvert = 16, static DoubleConditionBitSpecial = 32, static DoubleConditionBits = 48, static scratchRegister = JSC::X86Registers::r11, static stackPointerRegister = JSC::X86Registers::esp, static s_sseCheckState = JSC::MacroAssemblerX86Common::HasSSE4_2}, static MinInt32 = -2147483648, static MaxInt32 = 2147483647, static ScalePtr = JSC::AbstractMacroAssembler<JSC::X86Assembler>::TimesEight, static TotalRegisters = 16}, <No data fields>}, static PAYLOAD_OFFSET = 0, static JSVAL_SCALE = JSC::AbstractMacroAssembler<JSC::X86Assembler>::TimesEight}, static ClobberInCall = JSC::X86Registers::ecx, startLabel = {m_label = {m_offset = 0, m_used = false}}, callPatches = {<js::SystemAllocPolicy> = {<No data fields>}, static sElemIsPod = false, static sMaxInlineBytes = 1024, static sInlineCapacity = 64, static sInlineBytes = 1024, mBegin = 0x7fffd91329c8, mLength = 1, mCapacity = 140736642218752, storage = {u = { bytes = "\000\373\220\315\377\177\000\000\000Lq\316\377\177\000\000\001\000\000\000\000\000\000\000\060\316\377\377\377\177\000\000\351\371\235\366\377\177\000\000\250\314\377\377\377\177\000\000\274\314\377\377\377\177\000\000\000\000\000\000\000\000\000\000\210\263\330\343\377\177\000\000\000\000\000\000\000\000\000\000\063o\233\366\377\177\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\300H\205\337\377\177\000\000\a\261\233\366\377\177\000\000\001\000\000\000\377\177\000\000\000(\023\331\377\177\000\000\310)\023\331\377\177\000\000\000\000\000\000\000\000\000\000\070\256\333\310\377\177\000\000\000\000\000\000\001\000\000\000\320\341\307\367\377\177\000\000\003\000\000\000\377\177\000\000\000\000\000\000\000\000\000\000`\275\203\347\377\177\000\000\200;$\317\377\177\000\000\000Lq\316\377\177\000\000\000\000\000\000\000\000\000\000\001", '\000' <repeats 15 times>, "xt\271\310\377\177\000\000xt\271\310\377\177\000\000xt\271\310\377\177\000\000p\224\377\326\377\177\000\000\000\000\000\000\000\000\000\000 \224\345\322\377\177\000\000"..., _ = 140736642218752}}}, availInCall = {static TypeMaskReg = JSC::X86Registers::r13, static PayloadMaskReg = JSC::X86Registers::r14, static ValueReg = JSC::X86Registers::r10, static JSFrameReg = JSC::X86Registers::ebx, static ReturnReg = JSC::X86Registers::eax, static ArgReg0 = JSC::X86Registers::edi, static ArgReg1 = JSC::X86Registers::esi, static ArgReg2 = JSC::X86Registers::edx, static StackPointer = JSC::X86Registers::esp, static TempRegs = 967, static SavedRegs = 4294938624, static SingleByteRegs = 4294939591, static AvailRegs = 4294939591, freeMask = 4144282096}, extraStackSpace = 32767, callConvention = 3367584680, stackAdjust = 32767, static TotalFPRegisters = 8, static JSReturnReg_Type = JSC::X86Registers::ecx, static JSReturnReg_Data = JSC::X86Registers::edx, static JSParamReg_Argc = JSC::X86Registers::ecx, static StackAlignment = 16, static ReturnStackAdjustment = 0, static ShadowStackSpace = 0} cxReg = <value optimized out> linker = {<JSC::LinkBuffer> = {m_executablePool = 0x2d0bcf881000000, m_code = 0x7fffc943c2e8, m_size = 32}, masm = @0x7fff00000000} ep = 0x0 #23 0x00007ffff70402a3 in js::mjit::ic::NativeCall (f=..., ic=<value optimized out>) at /build/buildd/firefox-4.0~b11+build3+nobinonly/build-tree/mozilla/js/src/methodjit/MonoIC.cpp:874 cc = {<js::mjit::BaseCompiler> = {<js::mjit::MacroAssemblerTypedefs> = {<No data fields>}, cx = 0x7fffce714c00}, f = @0x7fffffffd0b0, ic = @0x7fffcb82c9e0, callingNew = false} #24 0x00007fffc86eed13 in ?? () No symbol table info available. #25 0x00007fffc86e0880 in ?? () No symbol table info available. #26 0x00007ffff7eb9040 in ?? () No symbol table info available. #27 0x0000000000000000 in ?? () No symbol table info available.
Urgh, sorry for posting that inline. Note, both of my colleagues are on Intel. I thought this was blacklisted there? When I access the same site on my Intel machine, I see "[GLX] currently only allowing the NVIDIA proprietary driver, as other drivers are giving too many crashes. To bypass this, define the MOZ_GLX_IGNORE_BLACKLIST environment variable." as expected, but the reporters aren't seeing that before it crashes
Component: General → Canvas: WebGL
Product: Firefox → Core
QA Contact: general → canvas.webgl
We are hoping that bug 632969 will fix this.
Depends on: 632969
Summary: Firefox Beta 11 crash [@ libc-2.12.2.so@0x33b45] → Firefox Beta 11 crash in glXQueryVersion [@ libc-2.12.2.so@0x33b45]
Thanks Chris. Can you clarify please: did the stack in comment 4 happen without MOZ_GLX_IGNORE_BLACKLIST?
Oh, sorry. No need to answer that. I see how that stack happens before we check MOZ_GLX_IGNORE_BLACKLIST.
Oh, yes. I can see that too now. Do you want to fix that, or do you want me to provide a patch?
I have a patch, attaching it to bug 632969.
Would be interesting to know whether glxinfo crashes on the Intel systems with this crash.
glxinfo isn't crashing on these systems. I asked someone experiencing the crash to run it and make sure that "server glx vendor string" didn't say "NVIDIA Corporation" ;)
Could you attach that output of glxinfo, and specify Mesa version, please? I'm trying to work out why Gecko crashes but glxinfo doesn't. The first thing glxinfo does is glXChooseVisual(). The first thing Gecko does after opening the libGL.so.1 is glXQueryVersion(). Both glXChooseVisual() and glXQueryVersion() call __glXInitialize() in exactly the same way before doing anything else. Why would __glXInitialize() crash for Gecko but not glxinfo?
This is an updated version of the last patch in bug 632969. I have applied your comments, took the GetError() route. This needs to be applied on top of the patches in bug 632969.
Attachment #511753 - Flags: review?(karlt)
Comment on attachment 511753 [details] [diff] [review] fix GLXLibrary::EnsureInitialized >+ // this scope is covered by a ScopedXErrorHandler to catch X errors in GLX calls, >+ // see bug 632867 comment 3 We now know enough to include a comment such as "Mesa versions up to 7.10 cause a BadLength error during the first GLX call when the server GLX version < 1.3." r+ with that comment and the GLX_VENDOR check removed from CreateGLContext().
Attachment #511753 - Flags: review?(karlt) → review+
blocking2.0: ? → betaN+
Whiteboard: [hardblocker]
Whiteboard: [hardblocker] → [hardblocker][has patch]
Thanks for catching that. Carrying forward r+.
Assignee: nobody → bjacob
Status: NEW → ASSIGNED
Attachment #511839 - Flags: review+
Status: ASSIGNED → RESOLVED
Closed: 14 years ago
Resolution: --- → FIXED
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
Re-landed: http://hg.mozilla.org/mozilla-central/rev/be64c2d2b306 This had indeed nothing to do with the failure, it just was part of the same push.
Status: REOPENED → RESOLVED
Closed: 14 years ago14 years ago
Resolution: --- → FIXED
Depends on: 647552
Crash Signature: [@ libc-2.12.2.so@0x33b45]
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: