[Intel-gfx] [PATCH v2] drm/i915/selftests: Always initialise err
Pandiyan, Dhinakaran
dhinakaran.pandiyan at intel.com
Tue Nov 14 22:40:46 UTC 2017
On Tue, 2017-11-14 at 22:33 +0000, Chris Wilson wrote:
> smatch does not track initialised values as well as gcc, and this
> triggers many warnings by smatch not presented by gcc. Silence smatch by
> initialising the error values to -ENODEV, which we use to denote
> internal errors. (If we see a selftest fail with a silent -ENODEV, we
> know smatch was right!)
>
> v2: smatch was right about igt_create_vma(), it may unlikely fail on the
> first object allocation which we want to be loud about.
>
Reviewed-by: Dhinakaran Pandiyan <dhinakaran.pandiyan at intel.com>
> Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
> ---
> drivers/gpu/drm/i915/selftests/i915_gem_context.c | 2 +-
> drivers/gpu/drm/i915/selftests/i915_gem_gtt.c | 8 ++++----
> drivers/gpu/drm/i915/selftests/i915_gem_request.c | 2 +-
> drivers/gpu/drm/i915/selftests/i915_gem_timeline.c | 2 +-
> drivers/gpu/drm/i915/selftests/i915_syncmap.c | 6 +++---
> drivers/gpu/drm/i915/selftests/i915_vma.c | 2 +-
> 6 files changed, 11 insertions(+), 11 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/selftests/i915_gem_context.c b/drivers/gpu/drm/i915/selftests/i915_gem_context.c
> index 61fcfa2c4dfd..664d1b4f8c69 100644
> --- a/drivers/gpu/drm/i915/selftests/i915_gem_context.c
> +++ b/drivers/gpu/drm/i915/selftests/i915_gem_context.c
> @@ -321,7 +321,7 @@ static int igt_ctx_exec(void *arg)
> LIST_HEAD(objects);
> unsigned long ncontexts, ndwords, dw;
> bool first_shared_gtt = true;
> - int err;
> + int err = -ENODEV;
>
> /* Create a few different contexts (with different mm) and write
> * through each ctx/mm using the GPU making sure those writes end
> diff --git a/drivers/gpu/drm/i915/selftests/i915_gem_gtt.c b/drivers/gpu/drm/i915/selftests/i915_gem_gtt.c
> index 581296860539..d9560d8a6cc8 100644
> --- a/drivers/gpu/drm/i915/selftests/i915_gem_gtt.c
> +++ b/drivers/gpu/drm/i915/selftests/i915_gem_gtt.c
> @@ -699,7 +699,7 @@ static int drunk_hole(struct drm_i915_private *i915,
> unsigned int *order, count, n;
> struct i915_vma *vma;
> u64 hole_size;
> - int err;
> + int err = -ENODEV;
>
> hole_size = (hole_end - hole_start) >> size;
> if (hole_size > KMALLOC_MAX_SIZE / sizeof(u32))
> @@ -958,7 +958,7 @@ static int exercise_ggtt(struct drm_i915_private *i915,
> u64 hole_start, hole_end, last = 0;
> struct drm_mm_node *node;
> IGT_TIMEOUT(end_time);
> - int err;
> + int err = -ENODEV;
>
> mutex_lock(&i915->drm.struct_mutex);
> restart:
> @@ -1164,7 +1164,7 @@ static int igt_gtt_reserve(void *arg)
> struct drm_i915_gem_object *obj, *on;
> LIST_HEAD(objects);
> u64 total;
> - int err;
> + int err = -ENODEV;
>
> /* i915_gem_gtt_reserve() tries to reserve the precise range
> * for the node, and evicts if it has to. So our test checks that
> @@ -1355,7 +1355,7 @@ static int igt_gtt_insert(void *arg)
> }, *ii;
> LIST_HEAD(objects);
> u64 total;
> - int err;
> + int err = -ENODEV;
>
> /* i915_gem_gtt_insert() tries to allocate some free space in the GTT
> * to the node, evicting if required.
> diff --git a/drivers/gpu/drm/i915/selftests/i915_gem_request.c b/drivers/gpu/drm/i915/selftests/i915_gem_request.c
> index 9a35ebd5c876..e3871db78beb 100644
> --- a/drivers/gpu/drm/i915/selftests/i915_gem_request.c
> +++ b/drivers/gpu/drm/i915/selftests/i915_gem_request.c
> @@ -332,7 +332,7 @@ static int live_nop_request(void *arg)
> struct intel_engine_cs *engine;
> struct live_test t;
> unsigned int id;
> - int err;
> + int err = -ENODEV;
>
> /* Submit various sized batches of empty requests, to each engine
> * (individually), and wait for the batch to complete. We can check
> diff --git a/drivers/gpu/drm/i915/selftests/i915_gem_timeline.c b/drivers/gpu/drm/i915/selftests/i915_gem_timeline.c
> index 4795877abe56..3000e6a7d82d 100644
> --- a/drivers/gpu/drm/i915/selftests/i915_gem_timeline.c
> +++ b/drivers/gpu/drm/i915/selftests/i915_gem_timeline.c
> @@ -79,7 +79,7 @@ static int igt_sync(void *arg)
> }, *p;
> struct intel_timeline *tl;
> int order, offset;
> - int ret;
> + int ret = -ENODEV;
>
> tl = mock_timeline(0);
> if (!tl)
> diff --git a/drivers/gpu/drm/i915/selftests/i915_syncmap.c b/drivers/gpu/drm/i915/selftests/i915_syncmap.c
> index bcab3d00a785..47f4ae18a1ef 100644
> --- a/drivers/gpu/drm/i915/selftests/i915_syncmap.c
> +++ b/drivers/gpu/drm/i915/selftests/i915_syncmap.c
> @@ -333,7 +333,7 @@ static int igt_syncmap_join_below(void *arg)
> {
> struct i915_syncmap *sync;
> unsigned int step, order, idx;
> - int err;
> + int err = -ENODEV;
>
> i915_syncmap_init(&sync);
>
> @@ -402,7 +402,7 @@ static int igt_syncmap_neighbours(void *arg)
> I915_RND_STATE(prng);
> IGT_TIMEOUT(end_time);
> struct i915_syncmap *sync;
> - int err;
> + int err = -ENODEV;
>
> /*
> * Each leaf holds KSYNCMAP seqno. Check that when we create KSYNCMAP
> @@ -447,7 +447,7 @@ static int igt_syncmap_compact(void *arg)
> {
> struct i915_syncmap *sync;
> unsigned int idx, order;
> - int err;
> + int err = -ENODEV;
>
> i915_syncmap_init(&sync);
>
> diff --git a/drivers/gpu/drm/i915/selftests/i915_vma.c b/drivers/gpu/drm/i915/selftests/i915_vma.c
> index 2e86ec136b35..eb89e301b602 100644
> --- a/drivers/gpu/drm/i915/selftests/i915_vma.c
> +++ b/drivers/gpu/drm/i915/selftests/i915_vma.c
> @@ -150,7 +150,7 @@ static int igt_vma_create(void *arg)
> IGT_TIMEOUT(end_time);
> LIST_HEAD(contexts);
> LIST_HEAD(objects);
> - int err;
> + int err = -ENOMEM;
>
> /* Exercise creating many vma amonst many objections, checking the
> * vma creation and lookup routines.
More information about the Intel-gfx
mailing list