"###!!! ASSERTION: Failed to create pixmap!: 'pixmap', file /home/cjones/mozilla/inbound/gfx/gl/GLContextProviderGLX.cpp, line 1041" with NVIDIA driver, followed by abort from X error on b2g-desktop

RESOLVED FIXED in mozilla17

Status

()

Core
Graphics
RESOLVED FIXED
5 years ago
5 years ago

People

(Reporter: cjones, Assigned: karlt)

Tracking

unspecified
mozilla17
x86_64
Linux
Points:
---
Bug Flags:
in-testsuite -

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(3 attachments, 1 obsolete attachment)

Created attachment 648288 [details] [diff] [review]
hack

Kyle mentioned this to me the other day, but I just ran into it myself.  Relatively recent regression, but don't have a range.

STR are
 (1) Build b2g for desktop (https://wiki.mozilla.org/Gaia/Hacking#Building_B2G)
 (2) Launch with MOZ_USE_OMTC=1 for omtc

We abort pretty soon after startup in a debug build.

The attached patch makes the crash stop, but it doesn't shed any light on the underlying problem.
(Assignee)

Comment 1

5 years ago
Created attachment 648478 [details]
modified glxinfo

Can someone who can reproduce compile this with "gcc -lGL glxinfo.c" and attach the output, please?

I'm suspicious of bug 707722, but that's not really "the other day".

Does this happen only with MOZ_USE_OMTC=1?
Does that turn on GL layers, or is that orthogonal?
(Assignee)

Comment 2

5 years ago
Created attachment 648481 [details]
modified glxinfo

Previous attachment was wrong file.
Attachment #648478 - Attachment is obsolete: true
(Assignee)

Comment 3

5 years ago
Bug 707722 was based on http://www.opengl.org/sdk/docs/man/xhtml/glXGetFBConfigAttrib.xml

"GLX_BUFFER_SIZE

  Number of bits per color buffer.
  If the frame buffer configuration supports RGBA contexts, then
  GLX_BUFFER_SIZE is the sum of GLX_RED_SIZE, GLX_GREEN_SIZE,
  GLX_BLUE_SIZE, and GLX_ALPHA_SIZE.
  If the frame buffer configuration supports only color index contexts,
  GLX_BUFFER_SIZE is the size of the
  color indexes."

Apparently NVIDIA fbconfigs may still have quite a different interpretation.
i.e. GLX_BUFFER_SIZE always 32, even with no alpha bits.
e.g. attachment 519303 [details]
http://old.nabble.com/Re:-FBConfig%27s-p7307053.html
http://lists.kde.org/?l=kwin&m=117019830318751&w=2
Assignee: nobody → karlt
Blocks: 707722
Summary: "###!!! ASSERTION: Failed to create pixmap!: 'pixmap', file /home/cjones/mozilla/inbound/gfx/gl/GLContextProviderGLX.cpp, line 1041" followed by abort from X error on b2g-desktop → "###!!! ASSERTION: Failed to create pixmap!: 'pixmap', file /home/cjones/mozilla/inbound/gfx/gl/GLContextProviderGLX.cpp, line 1041" with NVIDIA driver, followed by abort from X error on b2g-desktop
(Assignee)

Comment 4

5 years ago
Created attachment 649177 [details] [diff] [review]
check alpha instead of buffer size against render format

The assumption that alpha and color bits filled up the render format depth wasn't correct anyway.
Attachment #649177 - Flags: review?(matt.woodrow)
Attachment #649177 - Flags: review?(matt.woodrow) → review+
(Assignee)

Comment 5

5 years ago
https://hg.mozilla.org/integration/mozilla-inbound/rev/c392b83d5940

We don't currently run reftests with GLX layers but they do surprisingly well.
Just some border-radius tests that also fail on other platforms, and a different "Failed to create pixmap!" in scrolling/image-1.html which is kinda expected when trying to GLXCreatePixmap from a gfxImageSurface.
https://tbpl.mozilla.org/?tree=Try&rev=c91996287d43
Flags: in-testsuite-

Comment 6

5 years ago
https://hg.mozilla.org/mozilla-central/rev/c392b83d5940
Status: NEW → RESOLVED
Last Resolved: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla17
(Assignee)

Updated

5 years ago
Duplicate of this bug: 779852
You need to log in before you can comment on or make changes to this bug.