Skip to content

Commit 31d7459

Browse files
committed
prevent evict failure from breaking suspend
1 parent 6f81063 commit 31d7459

File tree

2 files changed

+11
-39
lines changed

2 files changed

+11
-39
lines changed

handheld.patch

Lines changed: 10 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -69007,11 +69007,14 @@ if necessary.
6900769007
Link: https://github.com/ROCm/ROCK-Kernel-Driver/issues/174
6900869008
Link: https://gitlab.freedesktop.org/drm/amd/-/issues/3476
6900969009
Closes: https://gitlab.freedesktop.org/drm/amd/-/issues/2362
69010+
69011+
Suggested-by: Antheas Kapenekakis <[email protected]>
69012+
Signed-off-by: Antheas Kapenekakis <[email protected]>
6901069013
Signed-off-by: Mario Limonciello <[email protected]>
6901169014
---
6901269015
drivers/gpu/drm/amd/amdgpu/amdgpu.h | 1 +
69013-
drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 40 ++++++++++++++++++++++
69014-
2 files changed, 41 insertions(+)
69016+
drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 42 ++++++++++++++++++++++
69017+
2 files changed, 43 insertions(+)
6901569018

6901669019
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu.h b/drivers/gpu/drm/amd/amdgpu/amdgpu.h
6901769020
index 233c17537492..dc05df25be91 100644
@@ -69026,7 +69029,7 @@ index 233c17537492..dc05df25be91 100644
6902669029
struct debugfs_blob_wrapper debugfs_vbios_blob;
6902769030
struct debugfs_blob_wrapper debugfs_discovery_blob;
6902869031
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
69029-
index 6fc3454e49c6..7fc9afacb355 100644
69032+
index 6fc3454e49c6..9edb6faae605 100644
6903069033
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
6903169034
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
6903269035
@@ -145,6 +145,8 @@ const char *amdgpu_asic_name[] = {
@@ -69059,7 +69062,7 @@ index 6fc3454e49c6..7fc9afacb355 100644
6905969062
/* make sure IB test finished before entering exclusive mode
6906069063
* to avoid preemption on IB test
6906169064
*/
69062-
@@ -4617,6 +4626,37 @@ static int amdgpu_device_evict_resources(struct amdgpu_device *adev)
69065+
@@ -4617,6 +4626,39 @@ static int amdgpu_device_evict_resources(struct amdgpu_device *adev)
6906369066
/*
6906469067
* Suspend & resume.
6906569068
*/
@@ -69087,7 +69090,9 @@ index 6fc3454e49c6..7fc9afacb355 100644
6908769090
+ r = amdgpu_device_evict_resources(adev);
6908869091
+ adev->in_s4 = false;
6908969092
+ if (r)
69090-
+ return NOTIFY_BAD;
69093+
+ dev_err(adev->dev,
69094+
+ "presuspend eviction failed (presumably due to active"
69095+
+ "application). Suspend eviction will cleanup.\n");
6909169096
+ break;
6909269097
+ }
6909369098
+
@@ -69101,39 +69106,6 @@ index 6fc3454e49c6..7fc9afacb355 100644
6910169106
2.47.0
6910269107

6910369108

69104-
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
69105-
From: Mario Limonciello <[email protected]>
69106-
Date: Fri, 22 Nov 2024 13:06:26 -0600
69107-
Subject: drm/amd: Drop needless call to evict resources in prepare()
69108-
69109-
As resources are now evicted by the pm notifier chain, there is
69110-
no need to also evict them during the pm prepare() callback.
69111-
69112-
Signed-off-by: Mario Limonciello <[email protected]>
69113-
---
69114-
drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 5 -----
69115-
1 file changed, 5 deletions(-)
69116-
69117-
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
69118-
index 7fc9afacb355..9c097be4d29a 100644
69119-
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
69120-
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
69121-
@@ -4676,11 +4676,6 @@ int amdgpu_device_prepare(struct drm_device *dev)
69122-
if (dev->switch_power_state == DRM_SWITCH_POWER_OFF)
69123-
return 0;
69124-
69125-
- /* Evict the majority of BOs before starting suspend sequence */
69126-
- r = amdgpu_device_evict_resources(adev);
69127-
- if (r)
69128-
- goto unprepare;
69129-
-
69130-
flush_delayed_work(&adev->gfx.gfx_off_delay_work);
69131-
69132-
for (i = 0; i < adev->num_ip_blocks; i++) {
69133-
--
69134-
2.47.0
69135-
69136-
6913769109
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
6913869110
From: Antheas Kapenekakis <[email protected]>
6913969111
Date: Fri, 25 Oct 2024 09:54:28 +0200

kernel.spec

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -170,7 +170,7 @@ Summary: The Linux kernel
170170
# This is needed to do merge window version magic
171171
%define patchlevel 11
172172
# This allows pkg_release to have configurable %%{?dist} tag
173-
%define specrelease 304%{?buildid}%{?dist}
173+
%define specrelease 305%{?buildid}%{?dist}
174174
# This defines the kabi tarball version
175175
%define kabiversion 6.11.9
176176

0 commit comments

Comments
 (0)