* [PATCH 1/2] drm/amdgpu/gfx11: return early in preempt_ib()
@ 2024-08-15 17:00 Alex Deucher
2024-08-15 17:00 ` [PATCH 2/2] drm/amdgpu/gfx12: " Alex Deucher
` (2 more replies)
0 siblings, 3 replies; 4+ messages in thread
From: Alex Deucher @ 2024-08-15 17:00 UTC (permalink / raw)
To: amd-gfx; +Cc: Alex Deucher
When MES is enabled KIQ is not available. Return an error
when someone uses the debugfs preempt test interface in
that case.
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
---
drivers/gpu/drm/amd/amdgpu/gfx_v11_0.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/drivers/gpu/drm/amd/amdgpu/gfx_v11_0.c b/drivers/gpu/drm/amd/amdgpu/gfx_v11_0.c
index 5685aee479df..5704ad25a49d 100644
--- a/drivers/gpu/drm/amd/amdgpu/gfx_v11_0.c
+++ b/drivers/gpu/drm/amd/amdgpu/gfx_v11_0.c
@@ -5924,6 +5924,9 @@ static int gfx_v11_0_ring_preempt_ib(struct amdgpu_ring *ring)
struct amdgpu_ring *kiq_ring = &kiq->ring;
unsigned long flags;
+ if (adev->enable_mes)
+ return -EINVAL;
+
if (!kiq->pmf || !kiq->pmf->kiq_unmap_queues)
return -EINVAL;
--
2.46.0
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [PATCH 2/2] drm/amdgpu/gfx12: return early in preempt_ib()
2024-08-15 17:00 [PATCH 1/2] drm/amdgpu/gfx11: return early in preempt_ib() Alex Deucher
@ 2024-08-15 17:00 ` Alex Deucher
2024-08-26 18:54 ` [PATCH 1/2] drm/amdgpu/gfx11: " Alex Deucher
2024-08-27 6:07 ` SRINIVASAN SHANMUGAM
2 siblings, 0 replies; 4+ messages in thread
From: Alex Deucher @ 2024-08-15 17:00 UTC (permalink / raw)
To: amd-gfx; +Cc: Alex Deucher
When MES is enabled KIQ is not available. Return an error
when someone uses the debugfs preempt test interface in
that case.
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
---
drivers/gpu/drm/amd/amdgpu/gfx_v12_0.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/drivers/gpu/drm/amd/amdgpu/gfx_v12_0.c b/drivers/gpu/drm/amd/amdgpu/gfx_v12_0.c
index f14e27f86e0e..070546c8dd59 100644
--- a/drivers/gpu/drm/amd/amdgpu/gfx_v12_0.c
+++ b/drivers/gpu/drm/amd/amdgpu/gfx_v12_0.c
@@ -4501,6 +4501,9 @@ static int gfx_v12_0_ring_preempt_ib(struct amdgpu_ring *ring)
struct amdgpu_ring *kiq_ring = &kiq->ring;
unsigned long flags;
+ if (adev->enable_mes)
+ return -EINVAL;
+
if (!kiq->pmf || !kiq->pmf->kiq_unmap_queues)
return -EINVAL;
--
2.46.0
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH 1/2] drm/amdgpu/gfx11: return early in preempt_ib()
2024-08-15 17:00 [PATCH 1/2] drm/amdgpu/gfx11: return early in preempt_ib() Alex Deucher
2024-08-15 17:00 ` [PATCH 2/2] drm/amdgpu/gfx12: " Alex Deucher
@ 2024-08-26 18:54 ` Alex Deucher
2024-08-27 6:07 ` SRINIVASAN SHANMUGAM
2 siblings, 0 replies; 4+ messages in thread
From: Alex Deucher @ 2024-08-26 18:54 UTC (permalink / raw)
To: Alex Deucher; +Cc: amd-gfx
Ping on this series?
Alex
On Thu, Aug 15, 2024 at 1:10 PM Alex Deucher <alexander.deucher@amd.com> wrote:
>
> When MES is enabled KIQ is not available. Return an error
> when someone uses the debugfs preempt test interface in
> that case.
>
> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
> ---
> drivers/gpu/drm/amd/amdgpu/gfx_v11_0.c | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/gfx_v11_0.c b/drivers/gpu/drm/amd/amdgpu/gfx_v11_0.c
> index 5685aee479df..5704ad25a49d 100644
> --- a/drivers/gpu/drm/amd/amdgpu/gfx_v11_0.c
> +++ b/drivers/gpu/drm/amd/amdgpu/gfx_v11_0.c
> @@ -5924,6 +5924,9 @@ static int gfx_v11_0_ring_preempt_ib(struct amdgpu_ring *ring)
> struct amdgpu_ring *kiq_ring = &kiq->ring;
> unsigned long flags;
>
> + if (adev->enable_mes)
> + return -EINVAL;
> +
> if (!kiq->pmf || !kiq->pmf->kiq_unmap_queues)
> return -EINVAL;
>
> --
> 2.46.0
>
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH 1/2] drm/amdgpu/gfx11: return early in preempt_ib()
2024-08-15 17:00 [PATCH 1/2] drm/amdgpu/gfx11: return early in preempt_ib() Alex Deucher
2024-08-15 17:00 ` [PATCH 2/2] drm/amdgpu/gfx12: " Alex Deucher
2024-08-26 18:54 ` [PATCH 1/2] drm/amdgpu/gfx11: " Alex Deucher
@ 2024-08-27 6:07 ` SRINIVASAN SHANMUGAM
2 siblings, 0 replies; 4+ messages in thread
From: SRINIVASAN SHANMUGAM @ 2024-08-27 6:07 UTC (permalink / raw)
To: Alex Deucher, amd-gfx
On 8/15/2024 10:30 PM, Alex Deucher wrote:
> When MES is enabled KIQ is not available. Return an error
> when someone uses the debugfs preempt test interface in
> that case.
>
> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
> ---
> drivers/gpu/drm/amd/amdgpu/gfx_v11_0.c | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/gfx_v11_0.c b/drivers/gpu/drm/amd/amdgpu/gfx_v11_0.c
> index 5685aee479df..5704ad25a49d 100644
> --- a/drivers/gpu/drm/amd/amdgpu/gfx_v11_0.c
> +++ b/drivers/gpu/drm/amd/amdgpu/gfx_v11_0.c
> @@ -5924,6 +5924,9 @@ static int gfx_v11_0_ring_preempt_ib(struct amdgpu_ring *ring)
> struct amdgpu_ring *kiq_ring = &kiq->ring;
> unsigned long flags;
>
> + if (adev->enable_mes)
> + return -EINVAL;
> +
> if (!kiq->pmf || !kiq->pmf->kiq_unmap_queues)
> return -EINVAL;
>
With MES feature enabled, based on allowing multiple command streams to
be executed concurrently on the GPU Vs KIQ that is used to send commands
to the GPU in a sequential manner, having both of them active at the
same time could lead to conflicts.
Therefore, when the MES is enabled, the KIQ becomes unavailable.
With this understanding, this series is:
Acked-by: Srinivasan Shanmugam <srinivasan.shanmugam@amd.com>
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2024-08-27 6:07 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-08-15 17:00 [PATCH 1/2] drm/amdgpu/gfx11: return early in preempt_ib() Alex Deucher
2024-08-15 17:00 ` [PATCH 2/2] drm/amdgpu/gfx12: " Alex Deucher
2024-08-26 18:54 ` [PATCH 1/2] drm/amdgpu/gfx11: " Alex Deucher
2024-08-27 6:07 ` SRINIVASAN SHANMUGAM
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox