[PATCH 0/6]
Ian Romanick
idr at freedesktop.org
Mon Apr 27 15:12:43 PDT 2009
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Pierre Willenbrock wrote:
> Ian Romanick schrieb:
>> Pierre Willenbrock wrote:
>>
>>> Additionally, in mesa, src/mesa/drivers/dri/intel/intel_tex_image.c,
>>> intelSetTexBuffer2, color_rb[0](the front buffer) is accessed without
>>> is_front_buffer_rendering being set to true, so RGBA visuals don't work
>>> when doing opengl compositing.
>> This is what mesa-tex_image-front-buffer.patch is about? I'm not sure I
>> completely follow. Could you elaborate?
>
> Not all of mesa-tex_image-front-buffer.patch. I don't know if the
> initialisation of is_front_buffer_rendering is needed, it seems to work
> without.
>
> In intelSetTexBuffer2 there is this sequence:
>
>> intel_update_renderbuffers(pDRICtx, dPriv);
>>
>> rb = intel_fb->color_rb[0];
>> /* If the region isn't set, then intel_update_renderbuffers was unable
>> * to get the buffers for the drawable.
>> */
>> if (rb->region == NULL)
>> return;
>
> So, it expects intel_update_renderbuffers to fill the
> intel_fb->color_rb[0]->region of the dPriv. This only happens, if
> is_front_buffer_rendering is true(or if there is no back buffer). Maybe
> something more complex is needed, forcing is_front_buffer_rendering to
> true was the easiest way to get the region allocated.
Okay, I see what's going on. This is the pixmap case. We handle this
case differently on the server, so I think we just need to handle it
even more differently.
Right now the client only asks for the front-buffer when it's going to
do front-buffer rendering. However, the server always creates the real
front-buffer so that CopyRegion and friends will work. It only does
this when the drawable is a window. I was under the impression that
only windows had back-buffers. Is this a pixmap with a back-buffer? If
so, try the attached xserver patch. I haven't tested it, but I think it
should fix this problem.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
iEYEARECAAYFAkn2LdsACgkQX1gOwKyEAw8xZgCfT6aEWUid4OouXFWPpLg4aqmM
d78An2R+9SeQD1C0zR+Fh5+RPXdd5KRJ
=Cto9
-----END PGP SIGNATURE-----
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: 0001-DRI2-Force-allocation-of-real-front-buffer-for-non.patch
Url: http://lists.x.org/archives/xorg-devel/attachments/20090427/afa76557/attachment.ksh
More information about the xorg-devel
mailing list