[PATCH] drm/amdgpu/dpm: flush any thermal work on fini
Christian König
deathsimple at vodafone.de
Sat Oct 22 17:49:51 UTC 2016
Am 21.10.2016 um 22:45 schrieb Alex Deucher:
> Flush any outstanding thermal work before tearing down
> the dpm driver.
>
> Signed-off-by: Alex Deucher <alexander.deucher at amd.com>
Reviewed-by: Christian König <christian.koenig at amd.com>.
> ---
> drivers/gpu/drm/amd/amdgpu/ci_dpm.c | 2 ++
> drivers/gpu/drm/amd/amdgpu/kv_dpm.c | 2 ++
> drivers/gpu/drm/amd/amdgpu/si_dpm.c | 2 ++
> 3 files changed, 6 insertions(+)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/ci_dpm.c b/drivers/gpu/drm/amd/amdgpu/ci_dpm.c
> index 6ecfc48..b090895 100644
> --- a/drivers/gpu/drm/amd/amdgpu/ci_dpm.c
> +++ b/drivers/gpu/drm/amd/amdgpu/ci_dpm.c
> @@ -6294,6 +6294,8 @@ static int ci_dpm_sw_fini(void *handle)
> {
> struct amdgpu_device *adev = (struct amdgpu_device *)handle;
>
> + flush_work(&adev->pm.dpm.thermal.work);
> +
> mutex_lock(&adev->pm.mutex);
> amdgpu_pm_sysfs_fini(adev);
> ci_dpm_fini(adev);
> diff --git a/drivers/gpu/drm/amd/amdgpu/kv_dpm.c b/drivers/gpu/drm/amd/amdgpu/kv_dpm.c
> index 42e5c94..190bce8 100644
> --- a/drivers/gpu/drm/amd/amdgpu/kv_dpm.c
> +++ b/drivers/gpu/drm/amd/amdgpu/kv_dpm.c
> @@ -3063,6 +3063,8 @@ static int kv_dpm_sw_fini(void *handle)
> {
> struct amdgpu_device *adev = (struct amdgpu_device *)handle;
>
> + flush_work(&adev->pm.dpm.thermal.work);
> +
> mutex_lock(&adev->pm.mutex);
> amdgpu_pm_sysfs_fini(adev);
> kv_dpm_fini(adev);
> diff --git a/drivers/gpu/drm/amd/amdgpu/si_dpm.c b/drivers/gpu/drm/amd/amdgpu/si_dpm.c
> index 9172133..21ed3db 100644
> --- a/drivers/gpu/drm/amd/amdgpu/si_dpm.c
> +++ b/drivers/gpu/drm/amd/amdgpu/si_dpm.c
> @@ -7779,6 +7779,8 @@ static int si_dpm_sw_fini(void *handle)
> {
> struct amdgpu_device *adev = (struct amdgpu_device *)handle;
>
> + flush_work(&adev->pm.dpm.thermal.work);
> +
> mutex_lock(&adev->pm.mutex);
> amdgpu_pm_sysfs_fini(adev);
> si_dpm_fini(adev);
More information about the amd-gfx
mailing list