drm/i915/selftests: Catch error from mock_file()
authorChris Wilson <chris@chris-wilson.co.uk>
Mon, 13 Mar 2017 12:47:24 +0000 (12:47 +0000)
committerChris Wilson <chris@chris-wilson.co.uk>
Mon, 13 Mar 2017 13:21:18 +0000 (13:21 +0000)
The patch 791ff39ae32a: "drm/i915: Live testing for context
execution" from Feb 13, 2017, leads to the following static checker
warning:

        drivers/gpu/drm/i915/selftests/i915_gem_context.c:347 igt_ctx_exec()
        error: 'file' dereferencing possible ERR_PTR()

Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Fixes: 791ff39ae32a ("drm/i915: Live testing for context execution")
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
Cc: Matthew Auld <matthew.auld@intel.com>
Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Cc: Mika Kuoppala <mika.kuoppala@intel.com>
Cc: <drm-intel-fixes@lists.freedesktop.org>
Link: http://patchwork.freedesktop.org/patch/msgid/20170313124724.10614-1-chris@chris-wilson.co.uk
Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
drivers/gpu/drm/i915/selftests/i915_gem_context.c

index 3813a19a61792b81fc9a2721c54707042e5f1608..1afb8b06e3e19bf23ed287277415afb364504b23 100644 (file)
@@ -320,8 +320,8 @@ 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_file *file = mock_file(i915);
        struct drm_i915_gem_object *obj;
+       struct drm_file *file;
        IGT_TIMEOUT(end_time);
        LIST_HEAD(objects);
        unsigned long ncontexts, ndwords, dw;
@@ -333,6 +333,10 @@ static int igt_ctx_exec(void *arg)
         * up in the expected pages of our obj.
         */
 
+       file = mock_file(i915);
+       if (IS_ERR(file))
+               return PTR_ERR(file);
+
        mutex_lock(&i915->drm.struct_mutex);
 
        ncontexts = 0;