drm: Skip initialising the drm_mm_node->hole_stack
authorChris Wilson <chris@chris-wilson.co.uk>
Wed, 3 Aug 2016 15:04:11 +0000 (16:04 +0100)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Mon, 8 Aug 2016 08:05:18 +0000 (10:05 +0200)
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
Reviewed-by: David Herrmann <dh.herrmann@gmail.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: http://patchwork.freedesktop.org/patch/msgid/1470236651-678-3-git-send-email-chris@chris-wilson.co.uk
drivers/gpu/drm/drm_mm.c

index 5c188c56894b2465a8208381dcafa5452576df29..3f56d4b0cdaee1d9defcf7b6633b80904ede05c2 100644 (file)
@@ -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;