Last Comment Bug 671259 - Disable use of GL when TFP is not available
: Disable use of GL when TFP is not available
Status: RESOLVED FIXED
:
Product: Core
Classification: Components
Component: Graphics (show other bugs)
: Trunk
: All Other
: -- normal with 1 vote (vote)
: mozilla8
Assigned To: Matt Woodrow (:mattwoodrow)
:
Mentors:
Depends on:
Blocks: ogl-linux-beta
  Show dependency treegraph
 
Reported: 2011-07-13 06:52 PDT by Rob Bradford
Modified: 2011-08-16 16:29 PDT (History)
2 users (show)
See Also:
Crash Signature:
(edit)
QA Whiteboard:
Iteration: ---
Points: ---
Has Regression Range: ---
Has STR: ---


Attachments
Block OpenGL when texture_from_pixmap isn't found (8.00 KB, patch)
2011-07-28 15:47 PDT, Matt Woodrow (:mattwoodrow)
jacob.benoit.1: review+
Details | Diff | Review
Block OpenGL when texture_from_pixmap isn't found v2 (8.01 KB, patch)
2011-07-30 20:55 PDT, Matt Woodrow (:mattwoodrow)
matt.woodrow: review+
Details | Diff | Review

Description Rob Bradford 2011-07-13 06:52:22 PDT
User Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/534.30 (KHTML, like Gecko) Chrome/12.0.742.112 Safari/534.30

Steps to reproduce:

When TFP (texture from pixmap / GLX_EXT_texture_from_pixmap) is unavailable we should not try and provide a GL context.



Expected results:

We should fail initialisation as if GL was not available.

Matt made the following comment on #670645

"I think we should just return PR_FALSE here, performance without this enabled
is significantly reduced over just using X to composite."
Comment 1 Rob Bradford 2011-07-13 10:19:12 PDT
Just returning PR_FALSE as discussed here has the side effect of disabling WebGL...
Comment 2 Matt Woodrow (:mattwoodrow) 2011-07-13 15:16:23 PDT
Good catch.

Probably the better thing to do is modify the GfxInfoX11/glxtest code to test for the presence of texture_from_pixmap and block the accelerated layers feature.
Comment 3 Matt Woodrow (:mattwoodrow) 2011-07-28 15:47:08 PDT
Created attachment 549252 [details] [diff] [review]
Block OpenGL when texture_from_pixmap isn't found
Comment 4 Benoit Jacob [:bjacob] (mostly away) 2011-07-29 13:13:52 PDT
Comment on attachment 549252 [details] [diff] [review]
Block OpenGL when texture_from_pixmap isn't found

r+ with the following comment:

>+    // Disable OpenGL layers when we don't have texture_from_pixmap because it regresses performance. 
>+    if (aFeature == nsIGfxInfo::FEATURE_OPENGL_LAYERS && !mHasTextureFromPixmap) {
>+        *aStatus = nsIGfxInfo::FEATURE_BLOCKED_DRIVER_VERSION;
>+        aSuggestedDriverVersion.AssignLiteral("Anything with EXT_texture_from_pixmap support");
>+        return NS_OK;
>+    }
>+

This is getting injected in about:support in a localized string that says "Try upgrading your driver to version %s or newer" or some such.

So this is going to get very confusing. At least add some kind of brackets to make the sentence easy to parse:

"<Anything with EXT_texture_from_pixmap support>"
Comment 5 Matt Woodrow (:mattwoodrow) 2011-07-30 20:55:58 PDT
Created attachment 549618 [details] [diff] [review]
Block OpenGL when texture_from_pixmap isn't found v2

Fixed review comment, carrying forward r=bjacob
Comment 6 Matt Woodrow (:mattwoodrow) 2011-08-04 18:16:04 PDT
http://hg.mozilla.org/integration/mozilla-inbound/rev/83fe19966844
Comment 7 Marco Bonardo [::mak] 2011-08-05 09:07:04 PDT
http://hg.mozilla.org/mozilla-central/rev/83fe19966844

Note You need to log in before you can comment on or make changes to this bug.