Re: [igt-dev] [PATCH i-g-t 1/3] lib/rendercopy: Add AUX page table support

Chris Wilson
2019-11-04T11:31:14Z

Quoting Imre Deak (2019-11-01 20:13:09)
> +static drm_intel_bo *
> +gen12_create_aux_pgtable_bo(drm_intel_bufmgr *bufmgr,
> + const struct igt_buf *dst_buf,
> + const struct igt_buf *src_buf)
> +{
> + struct igt_aux_pgtable_range ranges[2];
> + int range_count;
> + uint64_t pin_offset;
> + drm_intel_bo *gem_bo;
> +
> + range_count = 0;
> + pin_offset = 0;
> +
> + range_count += add_aux_pgtable_range(dst_buf,
> + &ranges[range_count], &pin_offset);
> + range_count += add_aux_pgtable_range(src_buf,
> + &ranges[range_count], &pin_offset);
> +
> + if (!range_count)
> + return NULL;

So every batch uses the same locations for their pair of surfaces;
causing a complete eviction stall between each batch. That's a nasty
side-effect that will hide flushing bugs between batches.
-Chris