Last Comment Bug 678134 - With GL layers on X11/NVIDIA, selecting text erases the text
: With GL layers on X11/NVIDIA, selecting text erases the text
Product: Core
Classification: Components
Component: Graphics (show other bugs)
: unspecified
: x86_64 Linux
: -- normal (vote)
: ---
Assigned To: Nobody; OK to take it and work on it
: Milan Sreckovic [:milan]
Depends on: 675474
Blocks: ogl-linux-beta
  Show dependency treegraph
Reported: 2011-08-10 22:02 PDT by Benoit Jacob [:bjacob] (mostly away)
Modified: 2011-08-24 07:24 PDT (History)
2 users (show)
See Also:
Crash Signature:
QA Whiteboard:
Iteration: ---
Points: ---
Has Regression Range: ---
Has STR: ---

screenshot for the "triangle effect" that I started seeing with NVIDIA 280.13 (181.86 KB, image/jpeg)
2011-08-14 21:26 PDT, Benoit Jacob [:bjacob] (mostly away)
no flags Details

Description Benoit Jacob [:bjacob] (mostly away) 2011-08-10 22:02:21 PDT
1. enable GL layers, restart browser
2. Go to any web page that has text. I got this on main page, on about:memory, ...
3. play with selecting and deselecting text on that page. After a while (every roughly 5-10 tries) you can get into a situation where the text you had selected completely disappears when you deselect it.
Comment 1 Benoit Jacob [:bjacob] (mostly away) 2011-08-10 22:04:20 PDT
Note: this is with NVIDIA 270.41.19 on a Quadro FX 880M
Comment 2 Benoit Jacob [:bjacob] (mostly away) 2011-08-10 22:23:50 PDT
In MOZ_GL_DEBUG mode, it's almost impossible to reproduce the bug. Had to try for a couple minutes. This hints at a possible synchronization problem between GL and X, given that the main difference that MOZ_GL_DEBUG makes is that it calls glFinish after every GL function.

There always is a little bit of flicker when selecting text. The selected text disappears for a very short time before being repainted in the selection. In MOZ_GL_DEBUG that problem is more visible, but that could be just a consequence of MOZ_GL_DEBUG being slow.

There is no GL error at all.
Comment 3 Benoit Jacob [:bjacob] (mostly away) 2011-08-14 21:04:31 PDT
The problem still occurs with NVIDIA 280.13.

In some cases I've had only a triangle of text rendered. My understanding is that we're rendering quads as 2 triangles and in this case only one of the two triangles had been painted by the time we did the compositing.

This hints strongly toward a syncing issue (see comment 2).
Comment 4 Benoit Jacob [:bjacob] (mostly away) 2011-08-14 21:26:34 PDT
Created attachment 553098 [details]
screenshot for the "triangle effect" that I started seeing with NVIDIA 280.13

It's worth saying that I didn't really see the "triangle effect" before the NVIDIA 280.13 upgrade. Before that, only whole quads were missing.
Comment 5 Matt Woodrow (:mattwoodrow) 2011-08-14 22:29:59 PDT
The only time we render triangles is when drawing textures onto our window. Swapping the buffers at the end of compositing should wait for all of these operations to finish.

That said, it's a pretty bizarre looking screenshot.
Comment 6 Benoit Jacob [:bjacob] (mostly away) 2011-08-17 11:58:53 PDT
This is fixed by the patch v2 in bug 675474 !
Comment 7 Benoit Jacob [:bjacob] (mostly away) 2011-08-24 07:24:05 PDT
Should be fixed by 675474, will verify in tomorrow's nightly.

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