[PATCH v2 02/11] lib: sbi_hsm: Don't try to restore state on failed change
Anup Patel
anup at brainfault.org
Mon Feb 27 06:22:07 PST 2023
On Mon, Feb 27, 2023 at 4:01 PM Andrew Jones <ajones at ventanamicro.com> wrote:
>
> When a state change fails there's no need to restore the original
> state as it remains the same.
>
> Signed-off-by: Andrew Jones <ajones at ventanamicro.com>
> Reviewed-by: Anup Patel <anup at brainfault.org>
Applied this patch to the riscv/opensbi repo.
Thanks,
Anup
> ---
> lib/sbi/sbi_hsm.c | 7 ++-----
> 1 file changed, 2 insertions(+), 5 deletions(-)
>
> diff --git a/lib/sbi/sbi_hsm.c b/lib/sbi/sbi_hsm.c
> index b71ee6ba4e80..7ee4159256be 100644
> --- a/lib/sbi/sbi_hsm.c
> +++ b/lib/sbi/sbi_hsm.c
> @@ -428,10 +428,8 @@ int sbi_hsm_hart_suspend(struct sbi_scratch *scratch, u32 suspend_type,
>
> /* Directly move from STARTED to SUSPENDED state */
> if (!__sbi_hsm_hart_change_state(hdata, SBI_HSM_STATE_STARTED,
> - SBI_HSM_STATE_SUSPENDED)) {
> - ret = SBI_EDENIED;
> - goto fail_restore_state;
> - }
> + SBI_HSM_STATE_SUSPENDED))
> + return SBI_EDENIED;
>
> /* Save the suspend type */
> hdata->suspend_type = suspend_type;
> @@ -466,7 +464,6 @@ int sbi_hsm_hart_suspend(struct sbi_scratch *scratch, u32 suspend_type,
> jump_warmboot();
> }
>
> -fail_restore_state:
> /*
> * We might have successfully resumed from retentive suspend
> * or suspend failed. In both cases, we restore state of hart.
> --
> 2.39.1
>
More information about the opensbi
mailing list