[PATCH] glamor: Make glamor_name_from_pixmap work without DRI3

Mark Kettenis mark.kettenis at xs4all.nl
Mon Nov 16 05:43:38 PST 2015


> From: Keith Packard <keithp at keithp.com>
> Date: Sun, 15 Nov 2015 23:51:04 -0800
> 
> Mark Kettenis <kettenis at openbsd.org> writes:
> 
> > This function is used by the modesetting driver to implement DRI2 and
> > shouldn't fail on systems that don't support DRI3.
> 
> If glamor_egl_dri3_fd_name_from_tex works on systems not using DRI3,
> then it better have its name changed to match reality.

Hi Keith,

It does seem to work... almost.  With this diff and the sync diff the
glamor-enabled modesetting driver works on OpenBSD, both on Intel and
AMD hradware, and provides 3D acceleration on both.  Without this
diff, glamor works, but 3D acceleration fails with a

  "Failed to get DRI2 name for pixmap"

message in the log.  I'll send an updated diff out.

There is one issue though.  The colors are wrong!  As far as I can
tell red and blue are reversed in the output for anything that uses 3D
acceleration (everything produced by the "2D" codepaths seems to be
fine).  I've been hunting this down yesterday, but so far not been
able to track this down.  Happens with both xserver 17.4 and 18.99.x,
and with both Mesa 10.2.9 and 11.0.3.  The galmor-enabled
xf86-video-ati driver on the AMD hardware doesn't have this issue.
Feels a bit like an endianness issue, but this is all on bog-standard
little-endian x86 hardware.

Any clues in tracking this down would be appreciated.


More information about the xorg-devel mailing list