[PATCH] drm: should return upon the best size(v3)

Liu, Monk Monk.Liu at amd.com
Tue Nov 27 14:13:19 UTC 2018


Oh, yeah ... I find one aspect, we need to consider "range_start" and "range_end"

Yeah, you guys are right, cool 

/Monk

-----Original Message-----
From: Liu, Monk 
Sent: Tuesday, November 27, 2018 10:10 PM
To: Koenig, Christian <Christian.Koenig at amd.com>; Chris Wilson <chris at chris-wilson.co.uk>; dri-devel at freedesktop.org
Subject: RE: [PATCH] drm: should return upon the best size(v3)

The logic this patch change is only for "best_hole" which is only get called with " DRM_MM_INSERT_BEST", In drm_mm_insert_node_in_range(), is there other aspect also need calculation and judge for the mode " DRM_MM_INSERT_BEST"  ??

/Monk


-----Original Message-----
From: Christian König <ckoenig.leichtzumerken at gmail.com>
Sent: Tuesday, November 27, 2018 9:48 PM
To: Liu, Monk <Monk.Liu at amd.com>; Koenig, Christian <Christian.Koenig at amd.com>; Chris Wilson <chris at chris-wilson.co.uk>; dri-devel at freedesktop.org
Subject: Re: [PATCH] drm: should return upon the best size(v3)

Am 27.11.18 um 14:40 schrieb Liu, Monk:
>> A node with the searched size is not necessary the leftmost one,
> We may have two nodes with the same size, and the one return first will be sure *not* the leftmost one, I aware of that ...
> But my question is why we need the leftmost one ?

Because the code is designed to iterate over all available nodes. The size is just the primary criteria to judge on.

If we won't return all nodes with the same size we won't necessary find a fitting one.

See how the code is used in drm_mm_insert_node_in_range().

Christian.

>
>
> -----Original Message-----
> From: Christian König <ckoenig.leichtzumerken at gmail.com>
> Sent: Tuesday, November 27, 2018 8:54 PM
> To: Chris Wilson <chris at chris-wilson.co.uk>; Liu, Monk 
> <Monk.Liu at amd.com>; dri-devel at freedesktop.org
> Subject: Re: [PATCH] drm: should return upon the best size(v3)
>
> Am 27.11.18 um 11:00 schrieb Christian König:
>> Am 27.11.18 um 10:20 schrieb Chris Wilson:
>>> Quoting Monk Liu (2018-11-27 03:10:34)
>>>> v2:
>>>> amend description:
>>>> for RB tree traveler we don't need to travel to the bottom level if 
>>>> already found the equal size node, thus the search performance can 
>>>> get improved.
>>>>
>>>> v3:
>>>> split "<=" to "<" case and "==" case
>>>>
>>>> Tested-by: Rex Zhu <Rex.zhu at amd.com>
>>>> Signed-off-by: Monk Liu <Monk.Liu at amd.com>
>>> Still fundamentally broken.
>> Can you explain that further? Do we need to return the deepest hole 
>> of the right size because the following algorithm depends on that?
> Ok figured it out myself by thinking more about it.
>
> A node with the searched size is not necessary the leftmost one, so we would not see all nodes with the searched size and potentially use the wrong one.
>
> Sorry Monk, but Chris is right this optimization is illegal.
>
> Regards,
> Christian.
>
>> Thanks,
>> Christian.
>>
>>> -Chris
>>> _______________________________________________
>>> dri-devel mailing list
>>> dri-devel at lists.freedesktop.org
>>> https://lists.freedesktop.org/mailman/listinfo/dri-devel
> _______________________________________________
> dri-devel mailing list
> dri-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/dri-devel



More information about the dri-devel mailing list