<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body>
Ah, sorry, I missed  "+                      ttm_bo_move_to_lru_tail(bo, NULL);".<br>
<br>
Right, moving them to end before releasing is fixing my concern.<br>
<br>
Sorry for noise.<br>
-David
<div style="line-height:1.5"><br>
<br>
-------- Original Message --------<br>
Subject: Re: [PATCH 11/11] drm/amdgpu: stop removing BOs from the LRU during CS<br>
From: "Koenig, Christian" <christian.koenig@amd.com><br>
To: "Zhou, David(ChunMing)" <david1.zhou@amd.com>,"Olsak, Marek" <marek.olsak@amd.com>
,"Liang, Prike" <prike.liang@amd.com>,dri-devel@lists.freedesktop.org,amd-gfx@lists.freedesktop.org<br>
CC: <br>
<br>
<blockquote style="margin:0 0 0 0.8ex;border-left:1px #ccc solid;padding-left:1ex">
<blockquote class="quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div>[CAUTION: External Email]
<div>
<div>BO list? No, we stop removing them from the LRU.<br>
<br>
But we still move them to the end of the LRU before releasing them.<br>
<br>
Christian.<br>
<br>
Am 15.05.19 um 16:21 schrieb Zhou, David(ChunMing):<br>
</div>
<blockquote></blockquote>
</div>
</div>
Isn't this patch trying to stop removing for all BOs  from bo list?<br>
<br>
-David<br>
<br>
-------- Original Message --------<br>
Subject: Re: [PATCH 11/11] drm/amdgpu: stop removing BOs from the LRU during CS<br>
From: Christian König <br>
To: "Zhou, David(ChunMing)" ,"Koenig, Christian" ,"Olsak, Marek" ,"Liang, Prike" ,<a href="mailto:dri-devel@lists.freedesktop.org,amd-gfx@lists.freedesktop.org">dri-devel@lists.freedesktop.org,amd-gfx@lists.freedesktop.org</a><br>
CC: <br>
<br>
<div>[CAUTION: External Email]
<div>
<div>That is a good point, but actually not a problem in practice.<br>
<br>
See the change to ttm_eu_fence_buffer_objects:<br>
<blockquote>-               ttm_bo_add_to_lru(bo);<br>
+               if (list_empty(&bo->lru))<br>
+                       ttm_bo_add_to_lru(bo);<br>
+               else<br>
+                       ttm_bo_move_to_lru_tail(bo, NULL);<br>
</blockquote>
<br>
We still move the BOs to the end of the LRU in the same order we have before, we just don't remove them when they are reserved.<br>
<br>
Regards,<br>
Christian.<br>
<br>
Am 14.05.19 um 16:31 schrieb Zhou, David(ChunMing):<br>
</div>
<blockquote></blockquote>
</div>
</div>
how to refresh LRU to keep the order align with bo list passed from user space?<br>
<br>
you can verify it by some games, performance could be different much between multiple runnings.<br>
<br>
-David<br>
<br>
-------- Original Message --------<br>
Subject: Re: [PATCH 11/11] drm/amdgpu: stop removing BOs from the LRU during CS<br>
From: Christian König <br>
To: "Zhou, David(ChunMing)" ,"Olsak, Marek" ,"Liang, Prike" ,<a href="mailto:dri-devel@lists.freedesktop.org,amd-gfx@lists.freedesktop.org">dri-devel@lists.freedesktop.org,amd-gfx@lists.freedesktop.org</a><br>
CC: <br>
<br>
<div>[CAUTION: External Email]
<div>
<div>Hui? What do you mean with that?<br>
<br>
Christian.<br>
<br>
Am 14.05.19 um 15:12 schrieb Zhou, David(ChunMing):<br>
</div>
<blockquote></blockquote>
</div>
</div>
<div>my only concern is how to fresh LRU when bo is from bo list.<br>
<br>
-David<br>
<br>
-------- Original Message --------<br>
Subject: [PATCH 11/11] drm/amdgpu: stop removing BOs from the LRU during CS<br>
From: Christian König <br>
To: "Olsak, Marek" ,"Zhou, David(ChunMing)" ,"Liang, Prike" ,<a href="mailto:dri-devel@lists.freedesktop.org,amd-gfx@lists.freedesktop.org">dri-devel@lists.freedesktop.org,amd-gfx@lists.freedesktop.org</a><br>
CC: <br>
<br>
</div>
<font size="2"><span style="font-size:11pt"></span></font>
<div>[CAUTION: External Email]<br>
<br>
This avoids OOM situations when we have lots of threads<br>
submitting at the same time.<br>
<br>
Signed-off-by: Christian König <a href="mailto:christian.koenig@amd.com"><christian.koenig@amd.com></a><br>
---<br>
 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c | 2 +-<br>
 1 file changed, 1 insertion(+), 1 deletion(-)<br>
<br>
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c<br>
index fff558cf385b..f9240a94217b 100644<br>
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c<br>
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c<br>
@@ -648,7 +648,7 @@ static int amdgpu_cs_parser_bos(struct amdgpu_cs_parser *p,<br>
        }<br>
<br>
        r = ttm_eu_reserve_buffers(&p->ticket, &p->validated, true,<br>
-                                  &duplicates, true);<br>
+                                  &duplicates, false);<br>
        if (unlikely(r != 0)) {<br>
                if (r != -ERESTARTSYS)<br>
                        DRM_ERROR("ttm_eu_reserve_buffers failed.\n");<br>
--<br>
2.17.1<br>
<br>
</div>
<br>
<br>
<fieldset></fieldset>
<pre>_______________________________________________
amd-gfx mailing list
<a href="mailto:amd-gfx@lists.freedesktop.org">amd-gfx@lists.freedesktop.org</a>
<a href="https://lists.freedesktop.org/mailman/listinfo/amd-gfx">https://lists.freedesktop.org/mailman/listinfo/amd-gfx</a></pre>
<br>
<br>
</blockquote>
</blockquote>
</prike.liang@amd.com></marek.olsak@amd.com></david1.zhou@amd.com></christian.koenig@amd.com></div>
</body>
</html>