2022-02-17 16:35:54

by Nathan Chancellor

[permalink] [raw]
Subject: [PATCH] drm/amdkfd: Use proper enum in pm_unmap_queues_v9()

Clang warns:

drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_packet_manager_v9.c:267:3:
error: implicit conversion from enumeration type 'enum
mes_map_queues_extended_engine_sel_enum' to different enumeration type
'enum mes_unmap_queues_extended_engine_sel_enum'
[-Werror,-Wenum-conversion]
extended_engine_sel__mes_map_queues__sdma0_to_7_sel :
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.

Use 'extended_engine_sel__mes_unmap_queues__sdma0_to_7_sel' to eliminate
the warning, which is the same numeric value of the proper type.

Fixes: 009e9a158505 ("drm/amdkfd: navi2x requires extended engines to map and unmap sdma queues")
Link: https://github.com/ClangBuiltLinux/linux/issues/1596
Signed-off-by: Nathan Chancellor <[email protected]>
---
drivers/gpu/drm/amd/amdkfd/kfd_packet_manager_v9.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

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 806a03566a24..18250845a989 100644
--- a/drivers/gpu/drm/amd/amdkfd/kfd_packet_manager_v9.c
+++ b/drivers/gpu/drm/amd/amdkfd/kfd_packet_manager_v9.c
@@ -264,7 +264,7 @@ static int pm_unmap_queues_v9(struct packet_manager *pm, uint32_t *buffer,
sizeof(struct pm4_mes_unmap_queues));

packet->bitfields2.extended_engine_sel = pm_use_ext_eng(pm->dqm->dev) ?
- extended_engine_sel__mes_map_queues__sdma0_to_7_sel :
+ extended_engine_sel__mes_unmap_queues__sdma0_to_7_sel :
extended_engine_sel__mes_unmap_queues__legacy_engine_sel;

packet->bitfields2.engine_sel =

base-commit: 3c30cf91b5ecc7272b3d2942ae0505dd8320b81c
--
2.35.1


2022-02-17 23:04:49

by Alex Deucher

[permalink] [raw]
Subject: Re: [PATCH] drm/amdkfd: Use proper enum in pm_unmap_queues_v9()

On Thu, Feb 17, 2022 at 11:22 AM Nathan Chancellor <[email protected]> wrote:
>
> Clang warns:
>
> drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_packet_manager_v9.c:267:3:
> error: implicit conversion from enumeration type 'enum
> mes_map_queues_extended_engine_sel_enum' to different enumeration type
> 'enum mes_unmap_queues_extended_engine_sel_enum'
> [-Werror,-Wenum-conversion]
> extended_engine_sel__mes_map_queues__sdma0_to_7_sel :
> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> 1 error generated.
>
> Use 'extended_engine_sel__mes_unmap_queues__sdma0_to_7_sel' to eliminate
> the warning, which is the same numeric value of the proper type.
>
> Fixes: 009e9a158505 ("drm/amdkfd: navi2x requires extended engines to map and unmap sdma queues")
> Link: https://github.com/ClangBuiltLinux/linux/issues/1596
> Signed-off-by: Nathan Chancellor <[email protected]>

Applied. Thanks!

Alex

> ---
> drivers/gpu/drm/amd/amdkfd/kfd_packet_manager_v9.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> 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 806a03566a24..18250845a989 100644
> --- a/drivers/gpu/drm/amd/amdkfd/kfd_packet_manager_v9.c
> +++ b/drivers/gpu/drm/amd/amdkfd/kfd_packet_manager_v9.c
> @@ -264,7 +264,7 @@ static int pm_unmap_queues_v9(struct packet_manager *pm, uint32_t *buffer,
> sizeof(struct pm4_mes_unmap_queues));
>
> packet->bitfields2.extended_engine_sel = pm_use_ext_eng(pm->dqm->dev) ?
> - extended_engine_sel__mes_map_queues__sdma0_to_7_sel :
> + extended_engine_sel__mes_unmap_queues__sdma0_to_7_sel :
> extended_engine_sel__mes_unmap_queues__legacy_engine_sel;
>
> packet->bitfields2.engine_sel =
>
> base-commit: 3c30cf91b5ecc7272b3d2942ae0505dd8320b81c
> --
> 2.35.1
>