Bug 95406

Summary: glLogicOp (GL_XOR) does not work on AMD/ATI card
Product: DRI Reporter: Franz Reiter <franz.reiter>
Component: DRM/RadeonAssignee: Default DRI bug account <dri-devel>
Status: RESOLVED WORKSFORME QA Contact:
Severity: normal    
Priority: medium    
Version: XOrg git   
Hardware: x86-64 (AMD64)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:

Description Franz Reiter 2016-05-15 11:38:03 UTC
Linux-driver on Ubuntu 14.04.4/64-bit with card AMD/ATI Richland Radeon HD 8570D
  (AMD Radeon R7 240):

it seems that "glLogicOp (GL_XOR)" does not work:

..
  glLogicOp (GL_XOR);
  glEnable (GL_COLOR_LOGIC_OP);
..
  glPixelZoom (1.f, 1.f);
  glDrawPixels (rb_dx, rb_dy,  // width, height
      // GL_BLUE,  // yellow
      GL_GREEN,    // violet
      // GL_RED,   // cyan
      GL_FLOAT,
      fBuf);                   // data
  glDisable(GL_COLOR_LOGIC_OP);


creates a black background only.

Sourcecode: see function GL_RubberBox_draw in:
https://github.com/gcad3d/gcad3d/blob/master/src/gr/ut_GL.c

The proprietary AMD/ATI-driver and all Nvidia-cards/drivers work ok with this code.

---------------------------------------------------------
CAD-CAM Services Ing. Franz Reiter
email franz.reiter@cadcam.co.at
http://www.cadcam.co.at
http://www.gcad3d.org
---------------------------------------------------------
Comment 1 Vedran Miletić 2016-05-15 11:46:56 UTC
Ubuntu 14.04 is a bit dated. Is it also broken on latest Mesa git?
Comment 2 Franz Reiter 2016-05-16 08:31:11 UTC
my problem is solved; after:

sudo apt-get build-dep mesa
- this did install (add !) several packages *drm* *llvm* ..
- now the selection-box (rubber-box - by glLogicOp (GL_XOR)) works ! Thanks.


=======================================================
Grafic card is: [Radeon HD 8570 / R7 240/340 OEM]
OS is Ubuntu 14.04.4 - Linux 3.19.0.59

> dpkg -l | grep mesa
libegl1-mesa-lts-vivid:amd64                          10.5.9-2ubuntu1~trusty2
libgl1-mesa-dev                                       10.1.3-0ubuntu0.6
libgl1-mesa-dri-lts-vivid:amd64                       10.5.9-2ubuntu1~trusty2
libgl1-mesa-glx-lts-vivid:amd64                       10.5.9-2ubuntu1~trusty2
libglapi-mesa-lts-vivid:amd64                         10.5.9-2ubuntu1~trusty2
libgles1-mesa-lts-vivid:amd64                         10.5.9-2ubuntu1~trusty2
libgles2-mesa-lts-vivid:amd64                         10.5.9-2ubuntu1~trusty2
libwayland-egl1-mesa-lts-vivid:amd64                  10.5.9-2ubuntu1~trusty2
mesa-common-dev                                       10.1.3-0ubuntu0.6
mesa-utils                                            8.1.0-2


> ldd /usr/lib/gCAD3D/binLinux64/gCAD3D
libGL.so.1 => /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1
lrwxrwxrwx   1 root root     14 Aug 21  2015 libGL.so.1 -> libGL.so.1.2.0
-rw-r--r--   1 root root 594456 Aug 21  2015 libGL.so.1.2.0

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.