iris: Allocate ZEROED BOs for shared resources
authorNanley Chery <nanley.g.chery@intel.com>
Mon, 10 Apr 2023 19:39:42 +0000 (12:39 -0700)
committerMarge Bot <emma+marge@anholt.net>
Mon, 17 Apr 2023 19:16:59 +0000 (19:16 +0000)
A port of cbee2d1102c ("i965/screen: Allocate ZEROED BOs for images").

Cc: mesa-stable
Reviewed-by: José Roberto de Souza <jose.souza@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22487>

src/gallium/drivers/iris/iris_resource.c

index 07678db..ff3318d 100644 (file)
@@ -487,9 +487,16 @@ iris_resource_alloc_flags(const struct iris_screen *screen,
    if (templ->bind & PIPE_BIND_PROTECTED)
       flags |= BO_ALLOC_PROTECTED;
 
-   if (templ->bind & PIPE_BIND_SHARED)
+   if (templ->bind & PIPE_BIND_SHARED) {
       flags |= BO_ALLOC_SHARED;
 
+      /* We request that the bufmgr zero because, if a buffer gets re-used
+       * from the pool, we don't want to leak random garbage from our process
+       * to some other.
+       */
+      flags |= BO_ALLOC_ZEROED;
+   }
+
    return flags;
 }