diff mbox

[3/3] drm: Skip initialising the drm_mm_node->hole_stack

Message ID 1470236651-678-3-git-send-email-chris@chris-wilson.co.uk (mailing list archive)
State New, archived
Headers show

Commit Message

Chris Wilson Aug. 3, 2016, 3:04 p.m. UTC
As we always add this to the drm_mm->hole_stack as our first operation,
we do not need to initialise the list node.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: David Herrmann <dh.herrmann@gmail.com>
Cc: dri-devel@lists.freedesktop.org
---
 drivers/gpu/drm/drm_mm.c | 6 +-----
 1 file changed, 1 insertion(+), 5 deletions(-)

Comments

David Herrmann Aug. 3, 2016, 5:49 p.m. UTC | #1
Hi Chris

On Wed, Aug 3, 2016 at 5:04 PM, Chris Wilson <chris@chris-wilson.co.uk> wrote:
> As we always add this to the drm_mm->hole_stack as our first operation,
> we do not need to initialise the list node.
>
> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> Cc: David Herrmann <dh.herrmann@gmail.com>
> Cc: dri-devel@lists.freedesktop.org
> ---
>  drivers/gpu/drm/drm_mm.c | 6 +-----
>  1 file changed, 1 insertion(+), 5 deletions(-)

"hole_follows" tells whether it is linked or not. So yeah, indeed, redundant.

Reviewed-by: David Herrmann <dh.herrmann@gmail.com>

Thanks
David

> diff --git a/drivers/gpu/drm/drm_mm.c b/drivers/gpu/drm/drm_mm.c
> index 5c188c56894b..3f56d4b0cdae 100644
> --- a/drivers/gpu/drm/drm_mm.c
> +++ b/drivers/gpu/drm/drm_mm.c
> @@ -217,7 +217,6 @@ static void drm_mm_insert_helper(struct drm_mm_node *hole_node,
>         node->color = color;
>         node->allocated = 1;
>
> -       INIT_LIST_HEAD(&node->hole_stack);
>         list_add(&node->node_list, &hole_node->node_list);
>
>         drm_mm_interval_tree_add_node(hole_node, node);
> @@ -276,14 +275,13 @@ int drm_mm_reserve_node(struct drm_mm *mm, struct drm_mm_node *node)
>         node->mm = mm;
>         node->allocated = 1;
>
> -       INIT_LIST_HEAD(&node->hole_stack);
>         list_add(&node->node_list, &hole->node_list);
>
>         drm_mm_interval_tree_add_node(hole, node);
>
>         if (node->start == hole_start) {
>                 hole->hole_follows = 0;
> -               list_del_init(&hole->hole_stack);
> +               list_del(&hole->hole_stack);
>         }
>
>         node->hole_follows = 0;
> @@ -379,7 +377,6 @@ static void drm_mm_insert_helper_range(struct drm_mm_node *hole_node,
>         node->color = color;
>         node->allocated = 1;
>
> -       INIT_LIST_HEAD(&node->hole_stack);
>         list_add(&node->node_list, &hole_node->node_list);
>
>         drm_mm_interval_tree_add_node(hole_node, node);
> @@ -833,7 +830,6 @@ void drm_mm_init(struct drm_mm * mm, u64 start, u64 size)
>
>         /* Clever trick to avoid a special case in the free hole tracking. */
>         INIT_LIST_HEAD(&mm->head_node.node_list);
> -       INIT_LIST_HEAD(&mm->head_node.hole_stack);
>         mm->head_node.hole_follows = 1;
>         mm->head_node.scanned_block = 0;
>         mm->head_node.scanned_prev_free = 0;
> --
> 2.8.1
>
diff mbox

Patch

diff --git a/drivers/gpu/drm/drm_mm.c b/drivers/gpu/drm/drm_mm.c
index 5c188c56894b..3f56d4b0cdae 100644
--- a/drivers/gpu/drm/drm_mm.c
+++ b/drivers/gpu/drm/drm_mm.c
@@ -217,7 +217,6 @@  static void drm_mm_insert_helper(struct drm_mm_node *hole_node,
 	node->color = color;
 	node->allocated = 1;
 
-	INIT_LIST_HEAD(&node->hole_stack);
 	list_add(&node->node_list, &hole_node->node_list);
 
 	drm_mm_interval_tree_add_node(hole_node, node);
@@ -276,14 +275,13 @@  int drm_mm_reserve_node(struct drm_mm *mm, struct drm_mm_node *node)
 	node->mm = mm;
 	node->allocated = 1;
 
-	INIT_LIST_HEAD(&node->hole_stack);
 	list_add(&node->node_list, &hole->node_list);
 
 	drm_mm_interval_tree_add_node(hole, node);
 
 	if (node->start == hole_start) {
 		hole->hole_follows = 0;
-		list_del_init(&hole->hole_stack);
+		list_del(&hole->hole_stack);
 	}
 
 	node->hole_follows = 0;
@@ -379,7 +377,6 @@  static void drm_mm_insert_helper_range(struct drm_mm_node *hole_node,
 	node->color = color;
 	node->allocated = 1;
 
-	INIT_LIST_HEAD(&node->hole_stack);
 	list_add(&node->node_list, &hole_node->node_list);
 
 	drm_mm_interval_tree_add_node(hole_node, node);
@@ -833,7 +830,6 @@  void drm_mm_init(struct drm_mm * mm, u64 start, u64 size)
 
 	/* Clever trick to avoid a special case in the free hole tracking. */
 	INIT_LIST_HEAD(&mm->head_node.node_list);
-	INIT_LIST_HEAD(&mm->head_node.hole_stack);
 	mm->head_node.hole_follows = 1;
 	mm->head_node.scanned_block = 0;
 	mm->head_node.scanned_prev_free = 0;