Re: [RFC PATCH] x86 / hibernate: Eliminate the redundant smp_ops.play_dead assignment
From: Rafael J. Wysocki
Date: Wed Feb 26 2025 - 13:26:00 EST
On Wed, Feb 26, 2025 at 7:08 PM Wentao Guan <guanwentao@xxxxxxxxxxxxx> wrote:
>
> Hello,
>
> Thanks for your reply.
>
> In my opinion, the only logic different before the patch is delete smp_ops.play_dead
> save and restore, as the comment "the resumed kernel will decide itself" and same
> logic as which in arch/arm64/kernel/hibernate.c, the ok path will work as expect.
Yes, the OK path will work as expected so long as smp_ops.play_dead is
switched over to resume_play_dead before calling
freeze_secondary_cpus().
> When discussing the error path and ret value that we not restore play_dead,
> I will try to analyze the difference between native_play_dead and resume_play_dead,
> and sev_es_play_dead [the all possiable three value], and I see some mwait and hlt
> way difference.[maybe it happens as disable the cpu failed and goes to Enable_cpus
> path in func:resume_target_kernel in hibernate.c? ] Is that it desgin to do and we can
> move it to a common place in hibernate.c and left some comments ?
Why not leave it as is?