Re: [PATCH] tests: Add gem_exec_params

Ville Syrjälä
2014-04-24T07:55:51Z

On Thu, Apr 24, 2014 at 09:18:24AM +0200, Daniel Vetter wrote:
> On Thu, Apr 24, 2014 at 8:43 AM, Zhao Yakui <yakui.zhao@intel.com> wrote:
> > On Wed, 2014-04-23 at 12:32 -0600, Daniel Vetter wrote:
> >> + igt_subtest("rel-constants-invalid") {
> >> + execbuf.flags = I915_EXEC_RENDER | (I915_EXEC_CONSTANTS_REL_SURFACE+1);
> >> + RUN_FAIL(EINVAL);
> >
> > It seems that the exec.flags is the same as "I915_EXEC_BSD |
> > I915_EXEC_CONSTANTS_REL_SURFACE). And then it is similar to subtest of
> > rel-constants-invalid-ring. Not sure whether you are hoping to set the
> > flag as "I915_EXEC_RENDER | I915_EXEC_CONSTANTS_MASK"?
>
> They're three completely different checks:
> 1. checks for invalid flags on rings other than RENDER
> 2. checks for a specific invalid flag which doesn't exist on gen5+ any more
> 3. checks for a completely invalid flag (notice the + 1) on any platform

I think the point was that I915_EXEC_RENDER+1 == I915_EXEC_BSD. Hence
the +1 is entirely bogus. So you want either
I915_EXEC_CONSTANTS_REL_SURFACE+(1<<6) or just
I915_EXEC_CONSTANTS_MASK.

--
Ville Syrjälä
Intel OTC