Re: [PATCH 6/8] drm/sched: Re-order struct drm_sched_rq members for clarity

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Am 09.09.24 um 19:19 schrieb Tvrtko Ursulin:
From: Tvrtko Ursulin <tvrtko.ursulin@xxxxxxxxxx>

Lets re-order the members to make it clear which are protected by the lock
and at the same time document it via kerneldoc.

Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@xxxxxxxxxx>
Cc: Christian König <christian.koenig@xxxxxxx>
Cc: Alex Deucher <alexander.deucher@xxxxxxx>
Cc: Luben Tuikov <ltuikov89@xxxxxxxxx>
Cc: Matthew Brost <matthew.brost@xxxxxxxxx>
Cc: Philipp Stanner <pstanner@xxxxxxxxxx>
---
  include/drm/gpu_scheduler.h | 10 ++++++----
  1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/include/drm/gpu_scheduler.h b/include/drm/gpu_scheduler.h
index a06753987d93..d4a3ba333568 100644
--- a/include/drm/gpu_scheduler.h
+++ b/include/drm/gpu_scheduler.h
@@ -243,10 +243,10 @@ struct drm_sched_entity {
  /**
   * struct drm_sched_rq - queue of entities to be scheduled.
   *
- * @lock: to modify the entities list.
   * @sched: the scheduler to which this rq belongs to.
- * @entities: list of the entities to be scheduled.
+ * @lock: protects the list, tree and current entity.
   * @current_entity: the entity which is to be scheduled.
+ * @entities: list of the entities to be scheduled.
   * @rb_tree_root: root of time based priory queue of entities for FIFO scheduling
   *
   * Run queue is a set of entities scheduling command submissions for
@@ -254,10 +254,12 @@ struct drm_sched_entity {
   * the next entity to emit commands from.
   */
  struct drm_sched_rq {
-	spinlock_t			lock;
  	struct drm_gpu_scheduler	*sched;
-	struct list_head		entities;
+
+	spinlock_t			lock;
+	/* Following members are protected by the @lock: */
  	struct drm_sched_entity		*current_entity;
+	struct list_head		entities;
  	struct rb_root_cached		rb_tree_root;

Just suggestion for further improvement:

struct {
    struct drm_sched_entity    *last_selected;
    struct list_head                  entities;
} rr;
struct {
    struct rb_root_cached        rb_tree_root;
} fifo;

But even without that the patch is Reviewed-by: Christian König <christian.koenig@xxxxxxx>

Regards,
Christian.

  };




[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux