<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<style type="text/css" style="display:none;"> P {margin-top:0;margin-bottom:0;} </style>
</head>
<body dir="ltr">
<p style="font-family:Arial;font-size:10pt;color:#0000FF;margin:5pt;" align="Left">
[AMD Official Use Only]<br>
</p>
<br>
<div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
Thanks Kevin and Felix!</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
In gfxoff state, the dequeue request(by cp register writing) can't make gfxoff exit, actually the cp is powered off and the cp register writing is invalid, doorbell registers writing(regluar way) or directly request smu to disable gfx powergate(by invoking
 amdgpu_gfx_off_ctrl) can trigger gfxoff exit.<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<br>
</div>
<div>I have also tryed amdgpu_dpm_switch_power_profile(adev,PP_SMC_POWER_PROFILE_COMPUTE,false), but it has no effect.<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<span style="font-size: 10pt; color: rgb(237, 92, 87);">[10386.162273] amdgpu: cp queue pipe 4 queue 0 preemption failed</span></div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<span style="font-size: 10pt; color: rgb(0, 0, 0);">[10671.225065] amdgpu: mmCP_HQD_ACTIVE : 0xffffffff</span><span style="font-size: 10pt; color: rgb(237, 92, 87);"><br>
</span>
<div><span style="font-size: 10pt;">[10386.162290] amdgpu: mmCP_HQD_HQ_STATUS0 : 0xffffffff</span></div>
<div><span style="font-size: 10pt;">[10386.162297] amdgpu: mmCP_STAT : 0xffffffff</span></div>
<div><span style="font-size: 10pt;">[10386.162303] amdgpu: mmCP_BUSY_STAT : 0xffffffff</span></div>
<div><span style="font-size: 10pt;">[10386.162308] amdgpu: mmRLC_STAT : 0xffffffff</span></div>
<div><span style="font-size: 10pt;">[10386.162314] amdgpu: mmGRBM_STATUS : 0xffffffff</span></div>
<span style="font-size: 10pt;">[10386.162320] amdgpu: mmGRBM_STATUS2: 0xffffffff</span></div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<span style="font-size: 10pt;"></span><br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
Thanks again!</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
Rico<br>
</div>
<div id="appendonsend"></div>
<hr style="display:inline-block;width:98%" tabindex="-1">
<div id="divRplyFwdMsg" dir="ltr"><font face="Calibri, sans-serif" style="font-size:11pt" color="#000000"><b>From:</b> Kuehling, Felix <Felix.Kuehling@amd.com><br>
<b>Sent:</b> Tuesday, January 25, 2022 23:31<br>
<b>To:</b> Wang, Yang(Kevin) <KevinYang.Wang@amd.com>; Yin, Tianci (Rico) <Tianci.Yin@amd.com>; amd-gfx@lists.freedesktop.org <amd-gfx@lists.freedesktop.org><br>
<b>Cc:</b> Grodzovsky, Andrey <Andrey.Grodzovsky@amd.com>; Chen, Guchun <Guchun.Chen@amd.com><br>
<b>Subject:</b> Re: [PATCH] drm/amdgpu: Fix an error message in rmmod</font>
<div> </div>
</div>
<div class="BodyFragment"><font size="2"><span style="font-size:11pt;">
<div class="PlainText">I have no objection to the change. It restores the sequence that was
<br>
used before e9669fb78262. But I don't understand why GFX_OFF is causing <br>
a preemption error during module unload, but not when KFD is in normal <br>
use. Maybe it's because of the compute power profile that's normally set <br>
by amdgpu_amdkfd_set_compute_idle before we interact with the HWS.<br>
<br>
<br>
Either way, the patch is<br>
<br>
Acked-by: Felix Kuehling <Felix.Kuehling@amd.com><br>
<br>
<br>
<br>
Am 2022-01-25 um 05:48 schrieb Wang, Yang(Kevin):<br>
><br>
> [AMD Official Use Only]<br>
><br>
><br>
> [AMD Official Use Only]<br>
><br>
><br>
> the issue is introduced in following patch, so add following <br>
> information is better.<br>
> /fixes: (e9669fb78262) drm/amdgpu: Add early fini callback/<br>
> /<br>
> /<br>
> Reviewed-by: Yang Wang <kevinyang.wang@amd.com><br>
> /<br>
> /<br>
> Best Regards,<br>
> Kevin<br>
><br>
> ------------------------------------------------------------------------<br>
> *From:* amd-gfx <amd-gfx-bounces@lists.freedesktop.org> on behalf of <br>
> Tianci Yin <tianci.yin@amd.com><br>
> *Sent:* Tuesday, January 25, 2022 6:03 PM<br>
> *To:* amd-gfx@lists.freedesktop.org <amd-gfx@lists.freedesktop.org><br>
> *Cc:* Grodzovsky, Andrey <Andrey.Grodzovsky@amd.com>; Yin, Tianci <br>
> (Rico) <Tianci.Yin@amd.com>; Chen, Guchun <Guchun.Chen@amd.com><br>
> *Subject:* [PATCH] drm/amdgpu: Fix an error message in rmmod<br>
> From: "Tianci.Yin" <tianci.yin@amd.com><br>
><br>
> [why]<br>
> In rmmod procedure, kfd sends cp a dequeue request, but the<br>
> request does not get response, then an error message "cp<br>
> queue pipe 4 queue 0 preemption failed" printed.<br>
><br>
> [how]<br>
> Performing kfd suspending after disabling gfxoff can fix it.<br>
><br>
> Change-Id: I0453f28820542d4a5ab26e38fb5b87ed76ce6930<br>
> Signed-off-by: Tianci.Yin <tianci.yin@amd.com><br>
> ---<br>
>  drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 4 ++--<br>
>  1 file changed, 2 insertions(+), 2 deletions(-)<br>
><br>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c <br>
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c<br>
> index b75d67f644e5..77e9837ba342 100644<br>
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c<br>
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c<br>
> @@ -2720,11 +2720,11 @@ static int amdgpu_device_ip_fini_early(struct <br>
> amdgpu_device *adev)<br>
>                  }<br>
>          }<br>
><br>
> -       amdgpu_amdkfd_suspend(adev, false);<br>
> -<br>
>          amdgpu_device_set_pg_state(adev, AMD_PG_STATE_UNGATE);<br>
>          amdgpu_device_set_cg_state(adev, AMD_CG_STATE_UNGATE);<br>
><br>
> +       amdgpu_amdkfd_suspend(adev, false);<br>
> +<br>
>          /* Workaroud for ASICs need to disable SMC first */<br>
>          amdgpu_device_smu_fini_early(adev);<br>
><br>
> -- <br>
> 2.25.1<br>
><br>
</div>
</span></font></div>
</div>
</body>
</html>