On 07/10/25 at 03:10pm, Rafael J. Wysocki wrote: > From: Rafael J. Wysocki <[email protected]> > > If dpm_suspend_start() fails, dpm_resume_end() must be called to > recover devices whose suspend callbacks have been called, but this > does not happen in the KEXEC_JUMP flow's error path due to a confused > goto target label. > > Address this by using the correct target label in the goto statement in > question.
Sounds very reasonable, thanks for the fix. Acked-by: Baoquan He <[email protected]> > > Fixes: 2965faa5e03d ("kexec: split kexec_load syscall from kexec core code") > Signed-off-by: Rafael J. Wysocki <[email protected]> > --- > kernel/kexec_core.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > --- a/kernel/kexec_core.c > +++ b/kernel/kexec_core.c > @@ -1080,7 +1080,7 @@ > console_suspend_all(); > error = dpm_suspend_start(PMSG_FREEZE); > if (error) > - goto Resume_console; > + goto Resume_devices; > /* > * dpm_suspend_end() must be called after dpm_suspend_start() > * to complete the transition, like in the hibernation flows > > >
