[Intel-gfx] [PATCH v2] drm/i915/selftests: Silence compiler warning in igt_ctx_exec
Tvrtko Ursulin
tvrtko.ursulin at linux.intel.com
Wed May 24 09:29:02 UTC 2017
On 23/05/2017 20:44, Chris Wilson wrote:
> The compiler doesn't always spot the guard that object is allocated on
> the first pass, leading to:
>
> drivers/gpu/drm/i915/selftests/i915_gem_context.c: warning: 'obj' may be used uninitialized in this function [-Wuninitialized]: => 370:8
>
> v2: Make it more obvious by setting obj to NULL on the first pass and
> any later pass where we need to reallocate.
>
> Reported-by: Geert Uytterhoeven <geert at linux-m68k.org>
> Fixes: 791ff39ae32a ("drm/i915: Live testing for context execution")
> Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
> Cc: Joonas Lahtinen <joonas.lahtinen at linux.intel.com>
> Cc: Tvrtko Ursulin <tvrtko.ursulin at intel.com>
> Cc: Matthew Auld <matthew.auld at intel.com>
> c: <drm-intel-fixes at lists.freedesktop.org> # v4.12-rc1+
> ---
> drivers/gpu/drm/i915/selftests/i915_gem_context.c | 8 +++++---
> 1 file changed, 5 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/selftests/i915_gem_context.c b/drivers/gpu/drm/i915/selftests/i915_gem_context.c
> index 1afb8b06e3e1..12b85b3278cd 100644
> --- a/drivers/gpu/drm/i915/selftests/i915_gem_context.c
> +++ b/drivers/gpu/drm/i915/selftests/i915_gem_context.c
> @@ -320,7 +320,7 @@ static unsigned long max_dwords(struct drm_i915_gem_object *obj)
> static int igt_ctx_exec(void *arg)
> {
> struct drm_i915_private *i915 = arg;
> - struct drm_i915_gem_object *obj;
> + struct drm_i915_gem_object *obj = NULL;
> struct drm_file *file;
> IGT_TIMEOUT(end_time);
> LIST_HEAD(objects);
> @@ -359,7 +359,7 @@ static int igt_ctx_exec(void *arg)
> }
>
> for_each_engine(engine, i915, id) {
> - if (dw == 0) {
> + if (!obj) {
> obj = create_test_object(ctx, file, &objects);
> if (IS_ERR(obj)) {
> err = PTR_ERR(obj);
> @@ -376,8 +376,10 @@ static int igt_ctx_exec(void *arg)
> goto out_unlock;
> }
>
> - if (++dw == max_dwords(obj))
> + if (++dw == max_dwords(obj)) {
> + obj = NULL;
> dw = 0;
> + }
> ndwords++;
> }
> ncontexts++;
>
Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin at intel.com>
Regards,
Tvrtko
More information about the Intel-gfx
mailing list