From: "Christian König" <deathsimple@vodafone.de>
To: Thomas Hellstrom <thomas@shipmail.org>, dri-devel@lists.freedesktop.org
Subject: Re: [PATCH 4/6] drm/ttm: add the infrastructur for pipelined evictions
Date: Sat, 2 Jul 2016 18:10:34 +0200 [thread overview]
Message-ID: <5777E77A.5040802@vodafone.de> (raw)
In-Reply-To: <57531201-e42a-b5a0-86c1-2c03c6e92e7c@shipmail.org>
Am 02.07.2016 um 10:39 schrieb Thomas Hellstrom:
> Christian,
>
> Thanks for doing this!
> A question below:
>
> On 06/15/2016 01:44 PM, Christian König wrote:
>> From: Christian König <christian.koenig@amd.com>
>>
>> Free up the memory immediately, remember the last eviction for each domain and
>> make new allocations depend on the last eviction to be completed.
>>
>> Signed-off-by: Christian König <christian.koenig@amd.com>
>> ---
>> drivers/gpu/drm/ttm/ttm_bo.c | 49 ++++++++++++++++++---
>> drivers/gpu/drm/ttm/ttm_bo_util.c | 92 +++++++++++++++++++++++++++++++++++++++
>> include/drm/ttm/ttm_bo_driver.h | 24 ++++++++++
>> 3 files changed, 160 insertions(+), 5 deletions(-)
>>
>>
>>
>> /*
>> * Protected by @io_reserve_mutex:
>> @@ -298,6 +301,11 @@ struct ttm_mem_type_manager {
>> */
>>
>> struct list_head lru;
>> +
>> + /*
>> + * Protected by @move_lock.
>> + */
>> + struct fence *move;
>> };
>>
> Did you look at protecting the move fence with RCU? I figure where there
> actually is a fence it doesn't matter much but in the fastpath where
> move is NULL we'd be able to get rid of a number of locking cycles.
Yeah, thought about that as well.
>
> I guess though there might be both licensing implications and
> requirements to using kfree_rcu() to free the fence.
The problem wasn't licensing (but it is good that you point that out I
wasn't aware of this problem), but that that the existing fence RCU
function wouldn't worked here and I didn't had time to take a closer look.
Should be relative easy to switch the read path over, because we already
free the fences RCU protected.
Regards,
Christian.
>
> /Thomas
>
>
>
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel
next prev parent reply other threads:[~2016-07-02 16:10 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-06-15 11:44 [PATCH 1/6] drm/ttm: remove no_gpu_wait param from ttm_bo_move_accel_cleanup Christian König
2016-06-15 11:44 ` [PATCH 2/6] drm/ttm: remove TTM_BO_PRIV_FLAG_MOVING Christian König
2016-06-15 11:44 ` [PATCH 3/6] drm/ttm: simplify ttm_bo_wait Christian König
2016-06-15 11:44 ` [PATCH 4/6] drm/ttm: add the infrastructur for pipelined evictions Christian König
2016-06-15 16:21 ` Alex Deucher
2016-07-02 8:39 ` Thomas Hellstrom
2016-07-02 16:10 ` Christian König [this message]
2016-06-15 11:44 ` [PATCH 5/6] drm/amdgpu: save the PD addr before scheduling the job Christian König
2016-06-16 8:33 ` zhoucm1
2016-06-16 9:52 ` Christian König
2016-06-16 9:54 ` zhoucm1
2016-06-16 10:10 ` Christian König
2016-06-15 11:44 ` [PATCH 6/6] drm/amdgpu: pipeline evictions as well Christian König
2016-06-15 16:22 ` Alex Deucher
2016-06-15 13:27 ` [PATCH 1/6] drm/ttm: remove no_gpu_wait param from ttm_bo_move_accel_cleanup Christian König
2016-06-15 15:57 ` Alex Deucher
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=5777E77A.5040802@vodafone.de \
--to=deathsimple@vodafone.de \
--cc=dri-devel@lists.freedesktop.org \
--cc=thomas@shipmail.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.