[PATCH 1/4] drm/amdkfd: Rename grace_period to wait_times

Kim, Jonathan Jonathan.Kim at amd.com
Tue Feb 18 20:27:07 UTC 2025


[Public]

> -----Original Message-----
> From: amd-gfx <amd-gfx-bounces at lists.freedesktop.org> On Behalf Of Harish
> Kasiviswanathan
> Sent: Wednesday, February 12, 2025 5:04 PM
> To: amd-gfx at lists.freedesktop.org
> Cc: Kasiviswanathan, Harish <Harish.Kasiviswanathan at amd.com>
> Subject: [PATCH 1/4] drm/amdkfd: Rename grace_period to wait_times
>
> Rename .set_grace_period() to .set_compute_queue_wait_counts(). The
> function not only sets grace_period but also sets other compute queue
> wait times. Up until now only grace_period was set/updated, however
> other wait times also needs set/update. Change function name to reflect
> this.
>
> No functional change intended.
>
> Signed-off-by: Harish Kasiviswanathan <Harish.Kasiviswanathan at amd.com>
> ---
>  .../drm/amd/amdkfd/kfd_device_queue_manager.c | 46 +++++++++----------
>  .../drm/amd/amdkfd/kfd_device_queue_manager.h |  2 +-
>  .../gpu/drm/amd/amdkfd/kfd_packet_manager.c   | 18 ++++++--
>  .../drm/amd/amdkfd/kfd_packet_manager_v9.c    | 16 +++----
>  .../drm/amd/amdkfd/kfd_packet_manager_vi.c    |  4 +-
>  drivers/gpu/drm/amd/amdkfd/kfd_priv.h         |  6 +--
>  6 files changed, 52 insertions(+), 40 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 195085079eb2..b88a95b5ae0d 100644
> --- a/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c
> +++ b/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c
> @@ -976,7 +976,7 @@ static int update_queue(struct device_queue_manager
> *dqm, struct queue *q,
>       if (dqm->sched_policy != KFD_SCHED_POLICY_NO_HWS) {
>               if (!dqm->dev->kfd->shared_resources.enable_mes)
>                       retval = unmap_queues_cpsch(dqm,
> -
> KFD_UNMAP_QUEUES_FILTER_DYNAMIC_QUEUES, 0,
> USE_DEFAULT_GRACE_PERIOD, false);
> +
> KFD_UNMAP_QUEUES_FILTER_DYNAMIC_QUEUES, 0,
> KFD_SET_DEFAULT_CP_QUEUE_WAIT_TIMES, false);

KFD_SET_DEFAULT_CP_QUEUE_WAIT_TIMES sounds as obscure as GRACE_PERIOD.
Maybe we should change it to something that abstracts what we're really trying to achieve with the new definition?
KFD_DEFAULT_DEQUEUE_WAIT_TIMES? (i.e. wait times related to dequeue request)

>               else if (prev_active)
>                       retval = remove_queue_mes(dqm, q, &pdd->qpd);
>
> @@ -1246,7 +1246,7 @@ static int evict_process_queues_cpsch(struct
> device_queue_manager *dqm,
>                                             qpd->is_debug ?
>
> KFD_UNMAP_QUEUES_FILTER_ALL_QUEUES :
>
> KFD_UNMAP_QUEUES_FILTER_DYNAMIC_QUEUES, 0,
> -                                           USE_DEFAULT_GRACE_PERIOD);
> +
> KFD_SET_DEFAULT_CP_QUEUE_WAIT_TIMES);
>
>  out:
>       dqm_unlock(dqm);
> @@ -1387,7 +1387,7 @@ static int restore_process_queues_cpsch(struct
> device_queue_manager *dqm,
>       }
>       if (!dqm->dev->kfd->shared_resources.enable_mes)
>               retval = execute_queues_cpsch(dqm,
> -
> KFD_UNMAP_QUEUES_FILTER_DYNAMIC_QUEUES, 0,
> USE_DEFAULT_GRACE_PERIOD);
> +
> KFD_UNMAP_QUEUES_FILTER_DYNAMIC_QUEUES, 0,
> KFD_SET_DEFAULT_CP_QUEUE_WAIT_TIMES);
>       eviction_duration = get_jiffies_64() - pdd->last_evict_timestamp;
>       atomic64_add(eviction_duration, &pdd->evict_duration_counter);
>  vm_not_acquired:
> @@ -1788,7 +1788,7 @@ static int halt_cpsch(struct device_queue_manager *dqm)
>               if (!dqm->dev->kfd->shared_resources.enable_mes)
>                       ret = unmap_queues_cpsch(dqm,
>
> KFD_UNMAP_QUEUES_FILTER_ALL_QUEUES, 0,
> -                             USE_DEFAULT_GRACE_PERIOD, false);
> +                             KFD_SET_DEFAULT_CP_QUEUE_WAIT_TIMES,
> false);
>               else
>                       ret = remove_all_kfd_queues_mes(dqm);
>       }
> @@ -1815,7 +1815,7 @@ static int unhalt_cpsch(struct device_queue_manager
> *dqm)
>       if (!dqm->dev->kfd->shared_resources.enable_mes)
>               ret = execute_queues_cpsch(dqm,
>
> KFD_UNMAP_QUEUES_FILTER_DYNAMIC_QUEUES,
> -                     0, USE_DEFAULT_GRACE_PERIOD);
> +                     0, KFD_SET_DEFAULT_CP_QUEUE_WAIT_TIMES);
>       else
>               ret = add_all_kfd_queues_mes(dqm);
>
> @@ -1860,7 +1860,7 @@ static int start_cpsch(struct device_queue_manager
> *dqm)
>       dqm->sched_running = true;
>
>       if (!dqm->dev->kfd->shared_resources.enable_mes)
> -             execute_queues_cpsch(dqm,
> KFD_UNMAP_QUEUES_FILTER_DYNAMIC_QUEUES, 0,
> USE_DEFAULT_GRACE_PERIOD);
> +             execute_queues_cpsch(dqm,
> KFD_UNMAP_QUEUES_FILTER_DYNAMIC_QUEUES, 0,
> KFD_SET_DEFAULT_CP_QUEUE_WAIT_TIMES);
>
>       /* Set CWSR grace period to 1x1000 cycle for GFX9.4.3 APU */
>       if (amdgpu_emu_mode == 0 && dqm->dev->adev->gmc.is_app_apu &&
> @@ -1868,7 +1868,7 @@ static int start_cpsch(struct device_queue_manager
> *dqm)
>               uint32_t reg_offset = 0;
>               uint32_t grace_period = 1;

Change the local var name to reflect new set call name (i.e. dequeue wait or whatever you'll decide).

>
> -             retval = pm_update_grace_period(&dqm->packet_mgr,
> +             retval = pm_set_compute_queue_wait_counts(&dqm->packet_mgr,
>                                               grace_period);

What about renaming this to pm_set_dequeue_wait_times since you'll be setting 2 types of times?
In patch 4 for you're setting both the dequeue wave message delay as well as the retry time.

Jon

>               if (retval)
>                       dev_err(dev, "Setting grace timeout failed\n");
> @@ -1916,7 +1916,7 @@ static int stop_cpsch(struct device_queue_manager
> *dqm)
>       }
>
>       if (!dqm->dev->kfd->shared_resources.enable_mes)
> -             unmap_queues_cpsch(dqm,
> KFD_UNMAP_QUEUES_FILTER_ALL_QUEUES, 0,
> USE_DEFAULT_GRACE_PERIOD, false);
> +             unmap_queues_cpsch(dqm,
> KFD_UNMAP_QUEUES_FILTER_ALL_QUEUES, 0,
> KFD_SET_DEFAULT_CP_QUEUE_WAIT_TIMES, false);
>       else
>               remove_all_kfd_queues_mes(dqm);
>
> @@ -1959,7 +1959,7 @@ static int create_kernel_queue_cpsch(struct
> device_queue_manager *dqm,
>       increment_queue_count(dqm, qpd, kq->queue);
>       qpd->is_debug = true;
>       execute_queues_cpsch(dqm,
> KFD_UNMAP_QUEUES_FILTER_DYNAMIC_QUEUES, 0,
> -                     USE_DEFAULT_GRACE_PERIOD);
> +                     KFD_SET_DEFAULT_CP_QUEUE_WAIT_TIMES);
>       dqm_unlock(dqm);
>
>       return 0;
> @@ -1974,7 +1974,7 @@ static void destroy_kernel_queue_cpsch(struct
> device_queue_manager *dqm,
>       decrement_queue_count(dqm, qpd, kq->queue);
>       qpd->is_debug = false;
>       execute_queues_cpsch(dqm,
> KFD_UNMAP_QUEUES_FILTER_ALL_QUEUES, 0,
> -                     USE_DEFAULT_GRACE_PERIOD);
> +                     KFD_SET_DEFAULT_CP_QUEUE_WAIT_TIMES);
>       /*
>        * Unconditionally decrement this counter, regardless of the queue's
>        * type.
> @@ -2054,7 +2054,7 @@ static int create_queue_cpsch(struct
> device_queue_manager *dqm, struct queue *q,
>
>               if (!dqm->dev->kfd->shared_resources.enable_mes)
>                       retval = execute_queues_cpsch(dqm,
> -
>       KFD_UNMAP_QUEUES_FILTER_DYNAMIC_QUEUES, 0,
> USE_DEFAULT_GRACE_PERIOD);
> +
>       KFD_UNMAP_QUEUES_FILTER_DYNAMIC_QUEUES, 0,
> KFD_SET_DEFAULT_CP_QUEUE_WAIT_TIMES);
>               else
>                       retval = add_queue_mes(dqm, q, qpd);
>               if (retval)
> @@ -2294,8 +2294,8 @@ static int unmap_queues_cpsch(struct
> device_queue_manager *dqm,
>       if (!down_read_trylock(&dqm->dev->adev->reset_domain->sem))
>               return -EIO;
>
> -     if (grace_period != USE_DEFAULT_GRACE_PERIOD) {
> -             retval = pm_update_grace_period(&dqm->packet_mgr,
> grace_period);
> +     if (grace_period != KFD_SET_DEFAULT_CP_QUEUE_WAIT_TIMES) {
> +             retval = pm_set_compute_queue_wait_counts(&dqm->packet_mgr,
> grace_period);
>               if (retval)
>                       goto out;
>       }
> @@ -2338,9 +2338,9 @@ static int unmap_queues_cpsch(struct
> device_queue_manager *dqm,
>       }
>
>       /* We need to reset the grace period value for this device */
> -     if (grace_period != USE_DEFAULT_GRACE_PERIOD) {
> -             if (pm_update_grace_period(&dqm->packet_mgr,
> -                                     USE_DEFAULT_GRACE_PERIOD))
> +     if (grace_period != KFD_SET_DEFAULT_CP_QUEUE_WAIT_TIMES) {
> +             if (pm_set_compute_queue_wait_counts(&dqm->packet_mgr,
> +
>       KFD_SET_DEFAULT_CP_QUEUE_WAIT_TIMES))
>                       dev_err(dev, "Failed to reset grace period\n");
>       }
>
> @@ -2360,7 +2360,7 @@ static int reset_queues_cpsch(struct
> device_queue_manager *dqm, uint16_t pasid)
>       dqm_lock(dqm);
>
>       retval = unmap_queues_cpsch(dqm,
> KFD_UNMAP_QUEUES_FILTER_BY_PASID,
> -                     pasid, USE_DEFAULT_GRACE_PERIOD, true);
> +                     pasid, KFD_SET_DEFAULT_CP_QUEUE_WAIT_TIMES,
> true);
>
>       dqm_unlock(dqm);
>       return retval;
> @@ -2468,7 +2468,7 @@ static int destroy_queue_cpsch(struct
> device_queue_manager *dqm,
>               if (!dqm->dev->kfd->shared_resources.enable_mes) {
>                       retval = execute_queues_cpsch(dqm,
>
> KFD_UNMAP_QUEUES_FILTER_DYNAMIC_QUEUES, 0,
> -
> USE_DEFAULT_GRACE_PERIOD);
> +
> KFD_SET_DEFAULT_CP_QUEUE_WAIT_TIMES);
>                       if (retval == -ETIME)
>                               qpd->reset_wavefronts = true;
>               } else {
> @@ -2763,7 +2763,7 @@ static int process_termination_cpsch(struct
> device_queue_manager *dqm,
>       }
>
>       if (!dqm->dev->kfd->shared_resources.enable_mes)
> -             retval = execute_queues_cpsch(dqm, filter, 0,
> USE_DEFAULT_GRACE_PERIOD);
> +             retval = execute_queues_cpsch(dqm, filter, 0,
> KFD_SET_DEFAULT_CP_QUEUE_WAIT_TIMES);
>
>       if ((retval || qpd->reset_wavefronts) &&
>           down_read_trylock(&dqm->dev->adev->reset_domain->sem)) {
> @@ -3123,7 +3123,7 @@ int reserve_debug_trap_vmid(struct
> device_queue_manager *dqm,
>       }
>
>       r = unmap_queues_cpsch(dqm,
> KFD_UNMAP_QUEUES_FILTER_ALL_QUEUES, 0,
> -                     USE_DEFAULT_GRACE_PERIOD, false);
> +                     KFD_SET_DEFAULT_CP_QUEUE_WAIT_TIMES, false);
>       if (r)
>               goto out_unlock;
>
> @@ -3172,7 +3172,7 @@ int release_debug_trap_vmid(struct
> device_queue_manager *dqm,
>       }
>
>       r = unmap_queues_cpsch(dqm,
> KFD_UNMAP_QUEUES_FILTER_ALL_QUEUES, 0,
> -                     USE_DEFAULT_GRACE_PERIOD, false);
> +                     KFD_SET_DEFAULT_CP_QUEUE_WAIT_TIMES, false);
>       if (r)
>               goto out_unlock;
>
> @@ -3355,7 +3355,7 @@ int resume_queues(struct kfd_process *p,
>               r = execute_queues_cpsch(dqm,
>
>       KFD_UNMAP_QUEUES_FILTER_DYNAMIC_QUEUES,
>                                       0,
> -                                     USE_DEFAULT_GRACE_PERIOD);
> +
>       KFD_SET_DEFAULT_CP_QUEUE_WAIT_TIMES);
>               if (r) {
>                       dev_err(dev, "Failed to resume process queues\n");
>                       if (queue_ids) {
> @@ -3734,7 +3734,7 @@ int dqm_debugfs_hang_hws(struct
> device_queue_manager *dqm)
>       }
>       dqm->active_runlist = true;
>       r = execute_queues_cpsch(dqm,
> KFD_UNMAP_QUEUES_FILTER_ALL_QUEUES,
> -                             0, USE_DEFAULT_GRACE_PERIOD);
> +                             0, KFD_SET_DEFAULT_CP_QUEUE_WAIT_TIMES);
>       dqm_unlock(dqm);
>
>       return r;
> diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.h
> b/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.h
> index 09ab36f8e8c6..273c04a95568 100644
> --- a/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.h
> +++ b/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.h
> @@ -37,7 +37,7 @@
>
>  #define KFD_MES_PROCESS_QUANTUM              100000
>  #define KFD_MES_GANG_QUANTUM         10000
> -#define USE_DEFAULT_GRACE_PERIOD 0xffffffff
> +#define KFD_SET_DEFAULT_CP_QUEUE_WAIT_TIMES 0xffffffff
>
>  struct device_process_node {
>       struct qcm_process_device *qpd;
> diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_packet_manager.c
> b/drivers/gpu/drm/amd/amdkfd/kfd_packet_manager.c
> index 4984b41cd372..8d2f63a38724 100644
> --- a/drivers/gpu/drm/amd/amdkfd/kfd_packet_manager.c
> +++ b/drivers/gpu/drm/amd/amdkfd/kfd_packet_manager.c
> @@ -396,14 +396,26 @@ int pm_send_query_status(struct packet_manager *pm,
> uint64_t fence_address,
>       return retval;
>  }
>
> -int pm_update_grace_period(struct packet_manager *pm, uint32_t grace_period)
> +/* pm_set_compute_queue_wait_counts: Configure CP IQ Timer Wait Counts for
> Items
> + *  Offloaded from the Compute Queues by writing to CP_IQ_WAIT_TIME2
> registers.
> + *
> + *  @wait_counts_config: Parameter overridden. Could be flag or grace_period
> + *   Possible flag values:
> + *     KFD_SET_DEFAULT_CP_QUEUE_WAIT_TIMES then reset to default value
> + *
> + *   If not an above flag, Wait Count for Scheduling Wave Message (SCH_WAVE)
> + *      is set to wait_counts_config value.
> + *      NOTE: if 0, The CP cannot handle it and will result in
> + *      an infinite grace period being set so set to 1 to prevent this.
> + */
> +int pm_set_compute_queue_wait_counts(struct packet_manager *pm, uint32_t
> wait_counts_config)
>  {
>       struct kfd_node *node = pm->dqm->dev;
>       struct device *dev = node->adev->dev;
>       int retval = 0;
>       uint32_t *buffer, size;
>
> -     size = pm->pmf->set_grace_period_size;
> +     size = pm->pmf->set_compute_queue_wait_counts_size;
>
>       mutex_lock(&pm->lock);
>
> @@ -419,7 +431,7 @@ int pm_update_grace_period(struct packet_manager *pm,
> uint32_t grace_period)
>                       goto out;
>               }
>
> -             retval = pm->pmf->set_grace_period(pm, buffer, grace_period);
> +             retval = pm->pmf->set_compute_queue_wait_counts(pm, buffer,
> wait_counts_config);
>               if (!retval)
>                       retval = kq_submit_packet(pm->priv_queue);
>               else
> diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_packet_manager_v9.c
> b/drivers/gpu/drm/amd/amdkfd/kfd_packet_manager_v9.c
> index d56525201155..8b693a9446e8 100644
> --- a/drivers/gpu/drm/amd/amdkfd/kfd_packet_manager_v9.c
> +++ b/drivers/gpu/drm/amd/amdkfd/kfd_packet_manager_v9.c
> @@ -297,9 +297,9 @@ static int pm_map_queues_v9(struct packet_manager *pm,
> uint32_t *buffer,
>       return 0;
>  }
>
> -static int pm_set_grace_period_v9(struct packet_manager *pm,
> +static int pm_set_compute_queue_wait_counts_v9(struct packet_manager *pm,
>               uint32_t *buffer,
> -             uint32_t grace_period)
> +             uint32_t wait_counts_config)
>  {
>       struct pm4_mec_write_data_mmio *packet;
>       uint32_t reg_offset = 0;
> @@ -308,11 +308,11 @@ static int pm_set_grace_period_v9(struct
> packet_manager *pm,
>       pm->dqm->dev->kfd2kgd->build_grace_period_packet_info(
>                       pm->dqm->dev->adev,
>                       pm->dqm->wait_times,
> -                     grace_period,
> +                     wait_counts_config,
>                       &reg_offset,
>                       &reg_data);
>
> -     if (grace_period == USE_DEFAULT_GRACE_PERIOD)
> +     if (wait_counts_config == KFD_SET_DEFAULT_CP_QUEUE_WAIT_TIMES)
>               reg_data = pm->dqm->wait_times;
>
>       packet = (struct pm4_mec_write_data_mmio *)buffer;
> @@ -415,7 +415,7 @@ const struct packet_manager_funcs kfd_v9_pm_funcs = {
>       .set_resources          = pm_set_resources_v9,
>       .map_queues             = pm_map_queues_v9,
>       .unmap_queues           = pm_unmap_queues_v9,
> -     .set_grace_period       = pm_set_grace_period_v9,
> +     .set_compute_queue_wait_counts =
> pm_set_compute_queue_wait_counts_v9,
>       .query_status           = pm_query_status_v9,
>       .release_mem            = NULL,
>       .map_process_size       = sizeof(struct pm4_mes_map_process),
> @@ -423,7 +423,7 @@ const struct packet_manager_funcs kfd_v9_pm_funcs = {
>       .set_resources_size     = sizeof(struct pm4_mes_set_resources),
>       .map_queues_size        = sizeof(struct pm4_mes_map_queues),
>       .unmap_queues_size      = sizeof(struct pm4_mes_unmap_queues),
> -     .set_grace_period_size  = sizeof(struct pm4_mec_write_data_mmio),
> +     .set_compute_queue_wait_counts_size  = sizeof(struct
> pm4_mec_write_data_mmio),
>       .query_status_size      = sizeof(struct pm4_mes_query_status),
>       .release_mem_size       = 0,
>  };
> @@ -434,7 +434,7 @@ const struct packet_manager_funcs
> kfd_aldebaran_pm_funcs = {
>       .set_resources          = pm_set_resources_v9,
>       .map_queues             = pm_map_queues_v9,
>       .unmap_queues           = pm_unmap_queues_v9,
> -     .set_grace_period       = pm_set_grace_period_v9,
> +     .set_compute_queue_wait_counts =
> pm_set_compute_queue_wait_counts_v9,
>       .query_status           = pm_query_status_v9,
>       .release_mem            = NULL,
>       .map_process_size       = sizeof(struct pm4_mes_map_process_aldebaran),
> @@ -442,7 +442,7 @@ const struct packet_manager_funcs
> kfd_aldebaran_pm_funcs = {
>       .set_resources_size     = sizeof(struct pm4_mes_set_resources),
>       .map_queues_size        = sizeof(struct pm4_mes_map_queues),
>       .unmap_queues_size      = sizeof(struct pm4_mes_unmap_queues),
> -     .set_grace_period_size  = sizeof(struct pm4_mec_write_data_mmio),
> +     .set_compute_queue_wait_counts_size  = sizeof(struct
> pm4_mec_write_data_mmio),
>       .query_status_size      = sizeof(struct pm4_mes_query_status),
>       .release_mem_size       = 0,
>  };
> diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_packet_manager_vi.c
> b/drivers/gpu/drm/amd/amdkfd/kfd_packet_manager_vi.c
> index 347c86e1c378..de28fc585296 100644
> --- a/drivers/gpu/drm/amd/amdkfd/kfd_packet_manager_vi.c
> +++ b/drivers/gpu/drm/amd/amdkfd/kfd_packet_manager_vi.c
> @@ -304,7 +304,7 @@ const struct packet_manager_funcs kfd_vi_pm_funcs = {
>       .set_resources          = pm_set_resources_vi,
>       .map_queues             = pm_map_queues_vi,
>       .unmap_queues           = pm_unmap_queues_vi,
> -     .set_grace_period       = NULL,
> +     .set_compute_queue_wait_counts  = NULL,
>       .query_status           = pm_query_status_vi,
>       .release_mem            = pm_release_mem_vi,
>       .map_process_size       = sizeof(struct pm4_mes_map_process),
> @@ -312,7 +312,7 @@ const struct packet_manager_funcs kfd_vi_pm_funcs = {
>       .set_resources_size     = sizeof(struct pm4_mes_set_resources),
>       .map_queues_size        = sizeof(struct pm4_mes_map_queues),
>       .unmap_queues_size      = sizeof(struct pm4_mes_unmap_queues),
> -     .set_grace_period_size  = 0,
> +     .set_compute_queue_wait_counts_size     = 0,
>       .query_status_size      = sizeof(struct pm4_mes_query_status),
>       .release_mem_size       = sizeof(struct pm4_mec_release_mem)
>  };
> diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_priv.h
> b/drivers/gpu/drm/amd/amdkfd/kfd_priv.h
> index 59619f794b6b..ae58d50b8eb9 100644
> --- a/drivers/gpu/drm/amd/amdkfd/kfd_priv.h
> +++ b/drivers/gpu/drm/amd/amdkfd/kfd_priv.h
> @@ -1417,7 +1417,7 @@ struct packet_manager_funcs {
>       int (*unmap_queues)(struct packet_manager *pm, uint32_t *buffer,
>                       enum kfd_unmap_queues_filter mode,
>                       uint32_t filter_param, bool reset);
> -     int (*set_grace_period)(struct packet_manager *pm, uint32_t *buffer,
> +     int (*set_compute_queue_wait_counts)(struct packet_manager *pm, uint32_t
> *buffer,
>                       uint32_t grace_period);
>       int (*query_status)(struct packet_manager *pm, uint32_t *buffer,
>                       uint64_t fence_address, uint64_t fence_value);
> @@ -1429,7 +1429,7 @@ struct packet_manager_funcs {
>       int set_resources_size;
>       int map_queues_size;
>       int unmap_queues_size;
> -     int set_grace_period_size;
> +     int set_compute_queue_wait_counts_size;
>       int query_status_size;
>       int release_mem_size;
>  };
> @@ -1452,7 +1452,7 @@ int pm_send_unmap_queue(struct packet_manager *pm,
>
>  void pm_release_ib(struct packet_manager *pm);
>
> -int pm_update_grace_period(struct packet_manager *pm, uint32_t grace_period);
> +int pm_set_compute_queue_wait_counts(struct packet_manager *pm, uint32_t
> wait_counts_config);
>
>  /* Following PM funcs can be shared among VI and AI */
>  unsigned int pm_build_pm4_header(unsigned int opcode, size_t packet_size);
> --
> 2.34.1



More information about the amd-gfx mailing list