Message ID | 20190702105034.2535-1-chris@chris-wilson.co.uk (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [i-g-t] i915: Fix gem_context_has_engine_map() for older kernels | expand |
On 02/07/2019 11:50, Chris Wilson wrote: > CI is currently breaking on linus/drm-intel-fixes due to the assert that > the kernel supports context engine maps. Report the lack of maps on > older kernels gracefully! > > Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> > Cc: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com> > --- > lib/i915/gem_engine_topology.c | 9 ++++++--- > 1 file changed, 6 insertions(+), 3 deletions(-) > > diff --git a/lib/i915/gem_engine_topology.c b/lib/i915/gem_engine_topology.c > index cae5a0292..cc2b3ff6e 100644 > --- a/lib/i915/gem_engine_topology.c > +++ b/lib/i915/gem_engine_topology.c > @@ -321,10 +321,13 @@ bool gem_context_has_engine_map(int fd, uint32_t ctx) > .param = I915_CONTEXT_PARAM_ENGINES, > .ctx_id = ctx > }; > - int ret; > > - ret = __gem_context_get_param(fd, ¶m); > - igt_assert_eq(ret, 0); > + /* > + * If the kernel is too old to support PARAM_ENGINES, > + * then naturally is has no engine map. > + */ > + if (__gem_context_get_param(fd, ¶m)) > + return false; > > return param.size; > } > Bleurgh, sorry. I even have some memories of checking ret, otherwise I wouldn't have had the local. Don't know what happened there.. Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com> Regards, Tvrtko
diff --git a/lib/i915/gem_engine_topology.c b/lib/i915/gem_engine_topology.c index cae5a0292..cc2b3ff6e 100644 --- a/lib/i915/gem_engine_topology.c +++ b/lib/i915/gem_engine_topology.c @@ -321,10 +321,13 @@ bool gem_context_has_engine_map(int fd, uint32_t ctx) .param = I915_CONTEXT_PARAM_ENGINES, .ctx_id = ctx }; - int ret; - ret = __gem_context_get_param(fd, ¶m); - igt_assert_eq(ret, 0); + /* + * If the kernel is too old to support PARAM_ENGINES, + * then naturally is has no engine map. + */ + if (__gem_context_get_param(fd, ¶m)) + return false; return param.size; }
CI is currently breaking on linus/drm-intel-fixes due to the assert that the kernel supports context engine maps. Report the lack of maps on older kernels gracefully! Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Cc: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com> --- lib/i915/gem_engine_topology.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-)