[Intel-gfx] [PATCH i-g-t v2 4/7] tests/gem_scheduler: Add gem_scheduler test

Morton, Derek J derek.j.morton at intel.com
Fri Mar 4 15:19:04 UTC 2016


I don't really understand your statement, can you elaborate please. What do you mean by timeline? Are you saying the driver needs changing? By deprecate HAS_BSD2 did you mean some change that would remove the need for gem_has_bsd2()? Doesn't I915_EXEC_BSD | 1<<13 and I915_EXEC_BSD | 2<<13 constitute separate exec_id's?

//Derek

-----Original Message-----
From: Chris Wilson [mailto:chris at chris-wilson.co.uk] 
Sent: Wednesday, March 2, 2016 8:15 PM
To: Morton, Derek J <derek.j.morton at intel.com>
Cc: intel-gfx at lists.freedesktop.org; daniel.vetter at ffwll.ch
Subject: Re: [Intel-gfx] [PATCH i-g-t v2 4/7] tests/gem_scheduler: Add gem_scheduler test

> +static struct ring {
> +	const char *name;
> +	int id;
> +	bool exists;
> +} rings[] = {
> +	{ "render", I915_EXEC_RENDER, false },
> +	{ "bsd1",    I915_EXEC_BSD | 1<<13, false },
> +	{ "bsd2",    I915_EXEC_BSD | 2<<13, false },

This is wrong. The timeline is coupled to the exec_id, which is the same for "both" BSD engines. To fix that, properly split up the two rings with separate ids and deprecate HAS_BSD2.

> +	{ "blt",    I915_EXEC_BLT, false },
> +	{ "vebox",  I915_EXEC_VEBOX, false }, };
> +
> +#define NBR_RINGS (sizeof(rings)/sizeof(struct ring))

Also see intel_execution_engines to save on duplicating code.
-Chris

--
Chris Wilson, Intel Open Source Technology Centre


More information about the Intel-gfx mailing list