[Mesa-dev] [PATCH v2 5/5] i965/miptree: Don't gtt map from map_depthstencil

Chris Wilson chris at chris-wilson.co.uk
Thu Apr 5 20:20:49 UTC 2018


Quoting Scott D Phillips (2018-04-03 21:05:45)
> Instead of gtt mapping, call out to other map functions (map_map
> or map_tiled_memcpy) for the depth surface. Removes a place where
> gtt mapping is used.
> 
> v2: add level, slice to debug print (Nanley)
> ---
> @@ -3549,16 +3555,21 @@ intel_miptree_unmap_depthstencil(struct brw_context *brw,
>     bool map_z32f_x24s8 = mt->format == MESA_FORMAT_Z_FLOAT32;
>  
>     if (map->mode & GL_MAP_WRITE_BIT) {
> +      struct intel_miptree_map z_mt_map = {
> +         .mode = map->mode | GL_MAP_INVALIDATE_RANGE_BIT, .x = map->x,
> +         .y = map->y, .w = map->w, .h = map->h,
> +      };
> +      if (z_mt->surf.tiling == ISL_TILING_LINEAR)
> +         intel_miptree_map_map(brw, z_mt, &z_mt_map, level, slice);

No easy way to use movntqda to avoid WC reads?

It feels like duplicating the decision tree from intel_miptree_map,
which presumably should be already able to choose the preferred access
for the internal planes. Or does that logic need to be refactored for
reuse here?
-Chris


More information about the mesa-dev mailing list