Commit 6e128141 authored by Chris Wilson's avatar Chris Wilson

drm/i915/selftests: Always initialise err

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.
Signed-off-by: default avatarChris Wilson <chris@chris-wilson.co.uk>
Link: https://patchwork.freedesktop.org/patch/msgid/20171114223346.25958-1-chris@chris-wilson.co.ukReviewed-by: default avatarDhinakaran Pandiyan <dhinakaran.pandiyan@intel.com>
parent 7469c62c
...@@ -325,7 +325,7 @@ static int igt_ctx_exec(void *arg) ...@@ -325,7 +325,7 @@ static int igt_ctx_exec(void *arg)
LIST_HEAD(objects); LIST_HEAD(objects);
unsigned long ncontexts, ndwords, dw; unsigned long ncontexts, ndwords, dw;
bool first_shared_gtt = true; bool first_shared_gtt = true;
int err; int err = -ENODEV;
/* Create a few different contexts (with different mm) and write /* Create a few different contexts (with different mm) and write
* through each ctx/mm using the GPU making sure those writes end * through each ctx/mm using the GPU making sure those writes end
......
...@@ -699,7 +699,7 @@ static int drunk_hole(struct drm_i915_private *i915, ...@@ -699,7 +699,7 @@ static int drunk_hole(struct drm_i915_private *i915,
unsigned int *order, count, n; unsigned int *order, count, n;
struct i915_vma *vma; struct i915_vma *vma;
u64 hole_size; u64 hole_size;
int err; int err = -ENODEV;
hole_size = (hole_end - hole_start) >> size; hole_size = (hole_end - hole_start) >> size;
if (hole_size > KMALLOC_MAX_SIZE / sizeof(u32)) if (hole_size > KMALLOC_MAX_SIZE / sizeof(u32))
...@@ -958,7 +958,7 @@ static int exercise_ggtt(struct drm_i915_private *i915, ...@@ -958,7 +958,7 @@ static int exercise_ggtt(struct drm_i915_private *i915,
u64 hole_start, hole_end, last = 0; u64 hole_start, hole_end, last = 0;
struct drm_mm_node *node; struct drm_mm_node *node;
IGT_TIMEOUT(end_time); IGT_TIMEOUT(end_time);
int err; int err = -ENODEV;
mutex_lock(&i915->drm.struct_mutex); mutex_lock(&i915->drm.struct_mutex);
restart: restart:
...@@ -1164,7 +1164,7 @@ static int igt_gtt_reserve(void *arg) ...@@ -1164,7 +1164,7 @@ static int igt_gtt_reserve(void *arg)
struct drm_i915_gem_object *obj, *on; struct drm_i915_gem_object *obj, *on;
LIST_HEAD(objects); LIST_HEAD(objects);
u64 total; u64 total;
int err; int err = -ENODEV;
/* i915_gem_gtt_reserve() tries to reserve the precise range /* i915_gem_gtt_reserve() tries to reserve the precise range
* for the node, and evicts if it has to. So our test checks that * 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) ...@@ -1355,7 +1355,7 @@ static int igt_gtt_insert(void *arg)
}, *ii; }, *ii;
LIST_HEAD(objects); LIST_HEAD(objects);
u64 total; u64 total;
int err; int err = -ENODEV;
/* i915_gem_gtt_insert() tries to allocate some free space in the GTT /* i915_gem_gtt_insert() tries to allocate some free space in the GTT
* to the node, evicting if required. * to the node, evicting if required.
......
...@@ -332,7 +332,7 @@ static int live_nop_request(void *arg) ...@@ -332,7 +332,7 @@ static int live_nop_request(void *arg)
struct intel_engine_cs *engine; struct intel_engine_cs *engine;
struct live_test t; struct live_test t;
unsigned int id; unsigned int id;
int err; int err = -ENODEV;
/* Submit various sized batches of empty requests, to each engine /* Submit various sized batches of empty requests, to each engine
* (individually), and wait for the batch to complete. We can check * (individually), and wait for the batch to complete. We can check
......
...@@ -79,7 +79,7 @@ static int igt_sync(void *arg) ...@@ -79,7 +79,7 @@ static int igt_sync(void *arg)
}, *p; }, *p;
struct intel_timeline *tl; struct intel_timeline *tl;
int order, offset; int order, offset;
int ret; int ret = -ENODEV;
tl = mock_timeline(0); tl = mock_timeline(0);
if (!tl) if (!tl)
......
...@@ -333,7 +333,7 @@ static int igt_syncmap_join_below(void *arg) ...@@ -333,7 +333,7 @@ static int igt_syncmap_join_below(void *arg)
{ {
struct i915_syncmap *sync; struct i915_syncmap *sync;
unsigned int step, order, idx; unsigned int step, order, idx;
int err; int err = -ENODEV;
i915_syncmap_init(&sync); i915_syncmap_init(&sync);
...@@ -402,7 +402,7 @@ static int igt_syncmap_neighbours(void *arg) ...@@ -402,7 +402,7 @@ static int igt_syncmap_neighbours(void *arg)
I915_RND_STATE(prng); I915_RND_STATE(prng);
IGT_TIMEOUT(end_time); IGT_TIMEOUT(end_time);
struct i915_syncmap *sync; struct i915_syncmap *sync;
int err; int err = -ENODEV;
/* /*
* Each leaf holds KSYNCMAP seqno. Check that when we create KSYNCMAP * Each leaf holds KSYNCMAP seqno. Check that when we create KSYNCMAP
...@@ -447,7 +447,7 @@ static int igt_syncmap_compact(void *arg) ...@@ -447,7 +447,7 @@ static int igt_syncmap_compact(void *arg)
{ {
struct i915_syncmap *sync; struct i915_syncmap *sync;
unsigned int idx, order; unsigned int idx, order;
int err; int err = -ENODEV;
i915_syncmap_init(&sync); i915_syncmap_init(&sync);
......
...@@ -150,7 +150,7 @@ static int igt_vma_create(void *arg) ...@@ -150,7 +150,7 @@ static int igt_vma_create(void *arg)
IGT_TIMEOUT(end_time); IGT_TIMEOUT(end_time);
LIST_HEAD(contexts); LIST_HEAD(contexts);
LIST_HEAD(objects); LIST_HEAD(objects);
int err; int err = -ENOMEM;
/* Exercise creating many vma amonst many objections, checking the /* Exercise creating many vma amonst many objections, checking the
* vma creation and lookup routines. * vma creation and lookup routines.
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment