vc4: Fix raster surface shadow updates under DRI2.

Glamor asks GBM for the handle of the BO, then flinks it itself.  We
were marking the bo non-private in the flink and dmabuf (DRI3) paths,
but not the GEM handle path.  As a result, non-pageflipping DRI2
swapbuffers (EGL apps, in particular) were never updating the texture.
This commit is contained in:
Eric Anholt
2015-07-27 23:23:57 -07:00
parent b0193adbe9
commit 95faf2c639
+6
View File
@@ -490,6 +490,12 @@ vc4_screen_bo_get_handle(struct pipe_screen *pscreen,
{
whandle->stride = stride;
/* If we're passing some reference to our BO out to some other part of
* the system, then we can't do any optimizations about only us being
* the ones seeing it (like BO caching or shadow update avoidance).
*/
bo->private = false;
switch (whandle->type) {
case DRM_API_HANDLE_TYPE_SHARED:
return vc4_bo_flink(bo, &whandle->handle);