]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
6.17-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 22 Oct 2025 05:31:53 +0000 (07:31 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 22 Oct 2025 05:31:53 +0000 (07:31 +0200)
added patches:
drm-xe-fix-an-is_err-vs-null-bug-in-xe_tile_alloc_vram.patch
pm-hibernate-fix-pm_hibernation_mode_is_suspend-build-breakage.patch

queue-6.17/drm-xe-fix-an-is_err-vs-null-bug-in-xe_tile_alloc_vram.patch [new file with mode: 0644]
queue-6.17/pm-hibernate-fix-pm_hibernation_mode_is_suspend-build-breakage.patch [new file with mode: 0644]
queue-6.17/series

diff --git a/queue-6.17/drm-xe-fix-an-is_err-vs-null-bug-in-xe_tile_alloc_vram.patch b/queue-6.17/drm-xe-fix-an-is_err-vs-null-bug-in-xe_tile_alloc_vram.patch
new file mode 100644 (file)
index 0000000..bac75cf
--- /dev/null
@@ -0,0 +1,35 @@
+From 6c9e64e83b22405622d1f47417cdb0d20d49ca35 Mon Sep 17 00:00:00 2001
+From: Dan Carpenter <dan.carpenter@linaro.org>
+Date: Fri, 18 Jul 2025 16:23:05 -0500
+Subject: drm/xe: Fix an IS_ERR() vs NULL bug in xe_tile_alloc_vram()
+
+From: Dan Carpenter <dan.carpenter@linaro.org>
+
+commit 6c9e64e83b22405622d1f47417cdb0d20d49ca35 upstream.
+
+The xe_vram_region_alloc() function returns NULL on error.  It never
+returns error pointers.  Update the error checking to match.
+
+Fixes: 4b0a5f5ce784 ("drm/xe: Unify the initialization of VRAM regions")
+Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org>
+Link: https://lore.kernel.org/r/5449065e-9758-4711-b706-78771c0753c4@sabinyo.mountain
+Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
+Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ drivers/gpu/drm/xe/xe_tile.c |    4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+--- a/drivers/gpu/drm/xe/xe_tile.c
++++ b/drivers/gpu/drm/xe/xe_tile.c
+@@ -116,8 +116,8 @@ int xe_tile_alloc_vram(struct xe_tile *t
+               return 0;
+       vram = xe_vram_region_alloc(xe, tile->id, XE_PL_VRAM0 + tile->id);
+-      if (IS_ERR(vram))
+-              return PTR_ERR(vram);
++      if (!vram)
++              return -ENOMEM;
+       tile->mem.vram = vram;
+       return 0;
diff --git a/queue-6.17/pm-hibernate-fix-pm_hibernation_mode_is_suspend-build-breakage.patch b/queue-6.17/pm-hibernate-fix-pm_hibernation_mode_is_suspend-build-breakage.patch
new file mode 100644 (file)
index 0000000..3f6ae2b
--- /dev/null
@@ -0,0 +1,61 @@
+From bbfe987c5a2854705393ad79813074e5eadcbde6 Mon Sep 17 00:00:00 2001
+From: "Rafael J. Wysocki" <rafael.j.wysocki@intel.com>
+Date: Fri, 26 Sep 2025 13:10:22 +0200
+Subject: PM: hibernate: Fix pm_hibernation_mode_is_suspend() build breakage
+
+From: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
+
+commit bbfe987c5a2854705393ad79813074e5eadcbde6 upstream.
+
+Commit 495c8d35035e ("PM: hibernate: Add pm_hibernation_mode_is_suspend()")
+that introduced pm_hibernation_mode_is_suspend() did not define it in
+the case when CONFIG_HIBERNATION is unset, but CONFIG_SUSPEND is set.
+
+Subsequent commit 0a6e9e098fcc ("drm/amd: Fix hybrid sleep") made the
+amdgpu driver use that function which led to kernel build breakage in
+the case mentioned above [1].
+
+Address this by using appropriate #ifdeffery around the definition of
+pm_hibernation_mode_is_suspend().
+
+Fixes: 0a6e9e098fcc ("drm/amd: Fix hybrid sleep")
+Reported-by: KernelCI bot <bot@kernelci.org>
+Closes: https://groups.io/g/kernelci-results/topic/regression_pm_testing/115439919 [1]
+Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
+Reviewed-by: Mario Limonciello (AMD) <superm1@kernel.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ include/linux/suspend.h |    8 ++++++--
+ 1 file changed, 6 insertions(+), 2 deletions(-)
+
+--- a/include/linux/suspend.h
++++ b/include/linux/suspend.h
+@@ -276,7 +276,6 @@ extern void arch_suspend_enable_irqs(voi
+ extern int pm_suspend(suspend_state_t state);
+ extern bool sync_on_suspend_enabled;
+-bool pm_hibernation_mode_is_suspend(void);
+ #else /* !CONFIG_SUSPEND */
+ #define suspend_valid_only_mem        NULL
+@@ -289,7 +288,6 @@ static inline bool pm_suspend_via_firmwa
+ static inline bool pm_resume_via_firmware(void) { return false; }
+ static inline bool pm_suspend_no_platform(void) { return false; }
+ static inline bool pm_suspend_default_s2idle(void) { return false; }
+-static inline bool pm_hibernation_mode_is_suspend(void) { return false; }
+ static inline void suspend_set_ops(const struct platform_suspend_ops *ops) {}
+ static inline int pm_suspend(suspend_state_t state) { return -ENOSYS; }
+@@ -420,6 +418,12 @@ static inline int hibernate_quiet_exec(i
+ }
+ #endif /* CONFIG_HIBERNATION */
++#if defined(CONFIG_HIBERNATION) && defined(CONFIG_SUSPEND)
++bool pm_hibernation_mode_is_suspend(void);
++#else
++static inline bool pm_hibernation_mode_is_suspend(void) { return false; }
++#endif
++
+ int arch_resume_nosmt(void);
+ #ifdef CONFIG_HIBERNATION_SNAPSHOT_DEV
index 20df78937a933c03c6dc6f584ac97dd04ad25662..4fe6c2c5675af0f69f197f7a1f613704d6005ad6 100644 (file)
@@ -156,3 +156,5 @@ drm-xe-move-struct-xe_vram_region-to-a-dedicated-header.patch
 drm-xe-unify-the-initialization-of-vram-regions.patch
 drm-xe-move-rebar-to-be-done-earlier.patch
 drm-xe-don-t-allow-evicting-of-bos-in-same-vm-in-array-of-vm-binds.patch
+pm-hibernate-fix-pm_hibernation_mode_is_suspend-build-breakage.patch
+drm-xe-fix-an-is_err-vs-null-bug-in-xe_tile_alloc_vram.patch