drm/i915: do not return invalid pointers as a *dentry
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 31 Jan 2019 13:15:07 +0000 (14:15 +0100)
committerRodrigo Vivi <rodrigo.vivi@intel.com>
Tue, 5 Feb 2019 17:45:28 +0000 (09:45 -0800)
When calling debugfs functions, they can now return error values if
something went wrong.  If that happens, return a NULL as a *dentry to
the relay core instead of passing it an illegal pointer.

The relay core should be able to handle an illegal pointer, but add this
check to be safe.

Cc: Jani Nikula <jani.nikula@linux.intel.com>
Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
Cc: David Airlie <airlied@linux.ie>
Cc: Daniel Vetter <daniel@ffwll.ch>
Cc: intel-gfx@lists.freedesktop.org
Cc: dri-devel@lists.freedesktop.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20190131131507.GA19807@kroah.com
drivers/gpu/drm/i915/intel_guc_log.c

index b53582c0c6c100d900539b4413dbede5a94b83a8..806fdfd7c78a7acf9777aa88cb72d1beb9c09fd4 100644 (file)
@@ -140,6 +140,9 @@ static struct dentry *create_buf_file_callback(const char *filename,
 
        buf_file = debugfs_create_file(filename, mode,
                                       parent, buf, &relay_file_operations);
+       if (IS_ERR(buf_file))
+               return NULL;
+
        return buf_file;
 }