Re: [PATCH] platform/x86/amd/pmf: Fix a suspend hang on Framework 13

From: Trolli Schmittlauch
Date: Sat Feb 17 2024 - 12:58:32 EST


As the reporter of that issue, I confirm that this fixes suspend and resume for me as well. I've applied the patch on top of 6.8-rc4.
Thanks for getting to the bottom of it so quickly.

On 17.02.24 01:52, Mario Limonciello wrote:
The buffer is cleared in the suspend handler but used in
the delayed work for amd_pmf_get_metrics().

Stop clearing it to fix the hang.

Reported-by: Trolli Schmittlauch <t.schmittlauch@xxxxxxxxxx>
Closes: https://lore.kernel.org/regressions/ed2226ff-257b-4cfd-afd6-bf3be9785474@localhost/
Closes: https://community.frame.work/t/kernel-6-8-rc-system-freezes-after-resuming-from-suspend-reproducers-wanted/45381
Fixes: 2b3a7f06caaf ("platform/x86/amd/pmf: Change return type of amd_pmf_set_dram_addr()")
Signed-off-by: Mario Limonciello <mario.limonciello@xxxxxxx>
---
drivers/platform/x86/amd/pmf/core.c | 2 --
1 file changed, 2 deletions(-)

diff --git a/drivers/platform/x86/amd/pmf/core.c b/drivers/platform/x86/amd/pmf/core.c
index 853158933510..4f734e049f4a 100644
--- a/drivers/platform/x86/amd/pmf/core.c
+++ b/drivers/platform/x86/amd/pmf/core.c
@@ -299,8 +299,6 @@ static int amd_pmf_suspend_handler(struct device *dev)
if (pdev->smart_pc_enabled)
cancel_delayed_work_sync(&pdev->pb_work);
- kfree(pdev->buf);
-
return 0;
}

Attachment: OpenPGP_signature.asc
Description: OpenPGP digital signature