[Intel-gfx] [PATCH 2/2] drm/i915: Remove impossibe checks from i915_gem_request_add_to_client

Tvrtko Ursulin tvrtko.ursulin at linux.intel.com
Wed Mar 23 15:15:03 UTC 2016


From: Tvrtko Ursulin <tvrtko.ursulin at intel.com>

There is only one caller of this functions which calls it under
strictly defined conditions. Error checking and return value
can be removed.

Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin at intel.com>
---
BTW it looks like the whole point of this request list is to implement
the throttle ioctl? Looks like a strange ioctl with a fixed 20ms criteria,
could it be re-implemented somehow without having to have this list?

Does it have to be per-client or could it wait for any requests on any
engine emitted 20ms ago?

 drivers/gpu/drm/i915/i915_drv.h            |  4 ++--
 drivers/gpu/drm/i915/i915_gem.c            | 14 ++------------
 drivers/gpu/drm/i915/i915_gem_execbuffer.c |  4 +---
 3 files changed, 5 insertions(+), 17 deletions(-)

diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
index 8727746cecd2..eaf015918b81 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -2292,8 +2292,8 @@ i915_gem_request_alloc(struct intel_engine_cs *engine,
 		       struct intel_context *ctx);
 void i915_gem_request_cancel(struct drm_i915_gem_request *req);
 void i915_gem_request_free(struct kref *req_ref);
-int i915_gem_request_add_to_client(struct drm_i915_gem_request *req,
-				   struct drm_file *file);
+void i915_gem_request_add_to_client(struct drm_i915_gem_request *req,
+				    struct drm_file *file);
 
 static inline uint32_t
 i915_gem_request_get_seqno(struct drm_i915_gem_request *req)
diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
index 8588c83abb35..6b4f271602f3 100644
--- a/drivers/gpu/drm/i915/i915_gem.c
+++ b/drivers/gpu/drm/i915/i915_gem.c
@@ -1367,19 +1367,11 @@ out:
 	return ret;
 }
 
-int i915_gem_request_add_to_client(struct drm_i915_gem_request *req,
-				   struct drm_file *file)
+void i915_gem_request_add_to_client(struct drm_i915_gem_request *req,
+				    struct drm_file *file)
 {
 	struct drm_i915_file_private *file_priv;
 
-	WARN_ON(!req || !file || req->file_priv);
-
-	if (!req || !file)
-		return -EINVAL;
-
-	if (req->file_priv)
-		return -EINVAL;
-
 	file_priv = file->driver_priv;
 
 	spin_lock(&file_priv->mm.lock);
@@ -1388,8 +1380,6 @@ int i915_gem_request_add_to_client(struct drm_i915_gem_request *req,
 	spin_unlock(&file_priv->mm.lock);
 
 	req->pid = get_pid(task_pid(current));
-
-	return 0;
 }
 
 static inline void
diff --git a/drivers/gpu/drm/i915/i915_gem_execbuffer.c b/drivers/gpu/drm/i915/i915_gem_execbuffer.c
index 374a0cb7a092..9295168cce10 100644
--- a/drivers/gpu/drm/i915/i915_gem_execbuffer.c
+++ b/drivers/gpu/drm/i915/i915_gem_execbuffer.c
@@ -1620,9 +1620,7 @@ i915_gem_do_execbuffer(struct drm_device *dev, void *data,
 		goto err_batch_unpin;
 	}
 
-	ret = i915_gem_request_add_to_client(req, file);
-	if (ret)
-		goto err_batch_unpin;
+	i915_gem_request_add_to_client(req, file);
 
 	/*
 	 * Save assorted stuff away to pass through to *_submission().
-- 
1.9.1



More information about the Intel-gfx mailing list