From: Felix Kuehling <felix.kuehling@amd.com>
To: David Yat Sin <david.yatsin@amd.com>, amd-gfx@lists.freedesktop.org
Subject: Re: [PATCH 1/2] drm/amdkfd: Fix GWS queue count
Date: Thu, 14 Apr 2022 10:52:01 -0400 [thread overview]
Message-ID: <e9eb2603-4997-30e1-ce2a-bd3ae0bec7e1@amd.com> (raw)
In-Reply-To: <20220413155145.861750-1-david.yatsin@amd.com>
Am 2022-04-13 um 11:51 schrieb David Yat Sin:
> Queue can be inactive during process termination. This would cause
> dqm->gws_queue_count to not be decremented. There can only be 1 GWS
> queue per device process so moving the logic out of loop.
>
> Signed-off-by: David Yat Sin <david.yatsin@amd.com>
> ---
> .../gpu/drm/amd/amdkfd/kfd_device_queue_manager.c | 12 ++++++------
> 1 file changed, 6 insertions(+), 6 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c b/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c
> index acf4f7975850..7c107b88d944 100644
> --- a/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c
> +++ b/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c
> @@ -1945,17 +1945,17 @@ static int process_termination_cpsch(struct device_queue_manager *dqm,
> else if (q->properties.type == KFD_QUEUE_TYPE_SDMA_XGMI)
> deallocate_sdma_queue(dqm, q);
>
> - if (q->properties.is_active) {
> + if (q->properties.is_active)
> decrement_queue_count(dqm, q->properties.type);
> - if (q->properties.is_gws) {
> - dqm->gws_queue_count--;
> - qpd->mapped_gws_queue = false;
> - }
> - }
This looks like the original intention was to decrement the counter for
inactive GWS queues. This makes sense because this counter is used to
determine whether the runlist is oversubscribed. Inactive queues are not
in the runlist, so they should not be counted.
I see that the counter is updated when queues are activated and
deactivated in update_queue. So IMO this patch is both incorrect and
unnecessary. Did you see an actual problem with the GWS counter during
process termination? If so, I'd like to know more to understand the root
cause.
Regards,
Felix
>
> dqm->total_queue_count--;
> }
>
> + if (qpd->mapped_gws_queue) {
> + dqm->gws_queue_count--;
> + qpd->mapped_gws_queue = false;
> + }
> +
> /* Unregister process */
> list_for_each_entry_safe(cur, next_dpn, &dqm->queues, list) {
> if (qpd == cur->qpd) {
next prev parent reply other threads:[~2022-04-14 14:52 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-04-13 15:51 [PATCH 1/2] drm/amdkfd: Fix GWS queue count David Yat Sin
2022-04-13 15:51 ` [PATCH 2/2] drm/amdkfd: CRIU add support for GWS queues David Yat Sin
2022-04-14 14:52 ` Felix Kuehling [this message]
2022-04-14 15:08 ` [PATCH 1/2] drm/amdkfd: Fix GWS queue count Yat Sin, David
2022-04-14 15:42 ` Felix Kuehling
2022-04-14 17:56 ` Yat Sin, David
2022-04-14 18:04 ` Felix Kuehling
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=e9eb2603-4997-30e1-ce2a-bd3ae0bec7e1@amd.com \
--to=felix.kuehling@amd.com \
--cc=amd-gfx@lists.freedesktop.org \
--cc=david.yatsin@amd.com \
/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.