[Intel-gfx] [PATCH 4/5] drm/i915: add a new perf configuration execbuf parameter

Chris Wilson chris at chris-wilson.co.uk
Tue May 28 10:52:36 UTC 2019


Quoting Lionel Landwerlin (2019-05-21 15:08:54)
> @@ -2048,6 +2081,42 @@ static int eb_submit(struct i915_execbuffer *eb)
>                         return err;
>         }

if (eb->oa_config) {
	err = i915_active_request_set(&eb->i915->perf.oa.oa_config_active,
				      eb->request);
	if (err)
		return err;
}

with the addition of
	struct i915_active_request oa_config_active;
to i915->perf.oa, and i915_active_init; That will ensure that the
oa_config can't be changed before execution (and the ordering restriction
is essentially a no-op if only one context has a specified oa_config).

> +       if (eb->oa_config &&
> +           eb->oa_config != eb->i915->perf.oa.exclusive_stream->oa_config) {

Fwiw, I would move these to eb_oa_config().

if (eb->oa_config) {
	err = eb_oa_config(eb);
	if (err)
		return err;
}

How does eb_oa_config mix with the global gen8_configure_all_contexts()?
-Chris


More information about the Intel-gfx mailing list