From: Greg Kroah-Hartman Date: Wed, 22 Oct 2025 05:31:53 +0000 (+0200) Subject: 6.17-stable patches X-Git-Tag: v6.6.114~4 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=d834e12d97fd3585482316f9788f8f3ea19e0eb9;p=thirdparty%2Fkernel%2Fstable-queue.git 6.17-stable patches 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 --- 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 index 0000000000..bac75cfa6d --- /dev/null +++ b/queue-6.17/drm-xe-fix-an-is_err-vs-null-bug-in-xe_tile_alloc_vram.patch @@ -0,0 +1,35 @@ +From 6c9e64e83b22405622d1f47417cdb0d20d49ca35 Mon Sep 17 00:00:00 2001 +From: Dan Carpenter +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 + +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 +Link: https://lore.kernel.org/r/5449065e-9758-4711-b706-78771c0753c4@sabinyo.mountain +Reviewed-by: Rodrigo Vivi +Signed-off-by: Rodrigo Vivi +Signed-off-by: Greg Kroah-Hartman +--- + 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 index 0000000000..3f6ae2b3e8 --- /dev/null +++ b/queue-6.17/pm-hibernate-fix-pm_hibernation_mode_is_suspend-build-breakage.patch @@ -0,0 +1,61 @@ +From bbfe987c5a2854705393ad79813074e5eadcbde6 Mon Sep 17 00:00:00 2001 +From: "Rafael J. Wysocki" +Date: Fri, 26 Sep 2025 13:10:22 +0200 +Subject: PM: hibernate: Fix pm_hibernation_mode_is_suspend() build breakage + +From: Rafael J. Wysocki + +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 +Closes: https://groups.io/g/kernelci-results/topic/regression_pm_testing/115439919 [1] +Signed-off-by: Rafael J. Wysocki +Reviewed-by: Mario Limonciello (AMD) +Signed-off-by: Greg Kroah-Hartman +--- + 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 diff --git a/queue-6.17/series b/queue-6.17/series index 20df78937a..4fe6c2c567 100644 --- a/queue-6.17/series +++ b/queue-6.17/series @@ -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