riscv: hibernation: Replace jalr with jr before suspend_restore_regs

Message ID 20230519060854.214138-1-suagrfillet@gmail.com
State New
Headers
Series riscv: hibernation: Replace jalr with jr before suspend_restore_regs |

Commit Message

Song Shuai May 19, 2023, 6:08 a.m. UTC
  No need to link the x1/ra reg via jalr before suspend_restore_regs
So it's better to replace jalr with jr.

Signed-off-by: Song Shuai <suagrfillet@gmail.com>
---
 arch/riscv/kernel/hibernate-asm.S | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
  

Comments

JeeHeng Sia May 19, 2023, 10:51 a.m. UTC | #1
looks good to me.

Thanks
Regards
Jee Heng
> -----Original Message-----
> From: Song Shuai <suagrfillet@gmail.com>
> Sent: Friday, May 19, 2023 2:09 PM
> To: paul.walmsley@sifive.com; palmer@dabbelt.com; aou@eecs.berkeley.edu; JeeHeng Sia <jeeheng.sia@starfivetech.com>; Mason
> Huo <mason.huo@starfivetech.com>; conor.dooley@microchip.com
> Cc: linux-riscv@lists.infradead.org; linux-kernel@vger.kernel.org; Song Shuai <suagrfillet@gmail.com>
> Subject: [PATCH] riscv: hibernation: Replace jalr with jr before suspend_restore_regs
> 
> No need to link the x1/ra reg via jalr before suspend_restore_regs
> So it's better to replace jalr with jr.
> 
> Signed-off-by: Song Shuai <suagrfillet@gmail.com>
> ---
>  arch/riscv/kernel/hibernate-asm.S | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/arch/riscv/kernel/hibernate-asm.S b/arch/riscv/kernel/hibernate-asm.S
> index effaf5ca5da0..5c76671c7e15 100644
> --- a/arch/riscv/kernel/hibernate-asm.S
> +++ b/arch/riscv/kernel/hibernate-asm.S
> @@ -50,7 +50,7 @@ ENTRY(hibernate_restore_image)
>  	REG_L	s4, restore_pblist
>  	REG_L	a1, relocated_restore_code
> 
> -	jalr	a1
> +	jr	a1
>  END(hibernate_restore_image)
> 
>  /*
> @@ -73,5 +73,5 @@ ENTRY(hibernate_core_restore_code)
>  	REG_L	s4, HIBERN_PBE_NEXT(s4)
>  	bnez	s4, .Lcopy
> 
> -	jalr	s2
> +	jr	s2
I am content with these changes, as they do not involve a return after the jump
>  END(hibernate_core_restore_code)
> --
> 2.20.1
  
JeeHeng Sia May 22, 2023, 1:12 a.m. UTC | #2
> -----Original Message-----
> From: JeeHeng Sia
> Sent: Friday, May 19, 2023 6:45 PM
> To: 'Song Shuai' <suagrfillet@gmail.com>; paul.walmsley@sifive.com; palmer@dabbelt.com; aou@eecs.berkeley.edu; Mason Huo
> <mason.huo@starfivetech.com>; conor.dooley@microchip.com
> Cc: linux-riscv@lists.infradead.org; linux-kernel@vger.kernel.org
> Subject: RE: [PATCH] riscv: hibernation: Replace jalr with jr before suspend_restore_regs
> 
> looks good to me.
> 
> Thanks
> Regards
> Jee Heng
> > -----Original Message-----
> > From: Song Shuai <suagrfillet@gmail.com>
> > Sent: Friday, May 19, 2023 2:09 PM
> > To: paul.walmsley@sifive.com; palmer@dabbelt.com; aou@eecs.berkeley.edu; JeeHeng Sia <jeeheng.sia@starfivetech.com>;
> Mason
> > Huo <mason.huo@starfivetech.com>; conor.dooley@microchip.com
> > Cc: linux-riscv@lists.infradead.org; linux-kernel@vger.kernel.org; Song Shuai <suagrfillet@gmail.com>
> > Subject: [PATCH] riscv: hibernation: Replace jalr with jr before suspend_restore_regs
> >
> > No need to link the x1/ra reg via jalr before suspend_restore_regs
> > So it's better to replace jalr with jr.
> >
> > Signed-off-by: Song Shuai <suagrfillet@gmail.com>
> > ---
> >  arch/riscv/kernel/hibernate-asm.S | 4 ++--
> >  1 file changed, 2 insertions(+), 2 deletions(-)
> >
> > diff --git a/arch/riscv/kernel/hibernate-asm.S b/arch/riscv/kernel/hibernate-asm.S
> > index effaf5ca5da0..5c76671c7e15 100644
> > --- a/arch/riscv/kernel/hibernate-asm.S
> > +++ b/arch/riscv/kernel/hibernate-asm.S
> > @@ -50,7 +50,7 @@ ENTRY(hibernate_restore_image)
> >  	REG_L	s4, restore_pblist
> >  	REG_L	a1, relocated_restore_code
> >
> > -	jalr	a1
> > +	jr	a1
> >  END(hibernate_restore_image)
> >
> >  /*
> > @@ -73,5 +73,5 @@ ENTRY(hibernate_core_restore_code)
> >  	REG_L	s4, HIBERN_PBE_NEXT(s4)
> >  	bnez	s4, .Lcopy
> >
> > -	jalr	s2
> > +	jr	s2
> I am content with these changes, as they do not involve a return after the jump
Reviewed-by: JeeHeng Sia <jeeheng.sia@starfivetech.com >

Thanks
Regards
Jee Heng
> >  END(hibernate_core_restore_code)
> > --
> > 2.20.1
  
Palmer Dabbelt June 19, 2023, 10:07 p.m. UTC | #3
On Fri, 19 May 2023 14:08:54 +0800, Song Shuai wrote:
> No need to link the x1/ra reg via jalr before suspend_restore_regs
> So it's better to replace jalr with jr.
> 
> 

Applied, thanks!

[1/1] riscv: hibernation: Replace jalr with jr before suspend_restore_regs
      https://git.kernel.org/palmer/c/650ea2a1dd96

Best regards,
  
patchwork-bot+linux-riscv@kernel.org June 20, 2023, 1 a.m. UTC | #4
Hello:

This patch was applied to riscv/linux.git (for-next)
by Palmer Dabbelt <palmer@rivosinc.com>:

On Fri, 19 May 2023 14:08:54 +0800 you wrote:
> No need to link the x1/ra reg via jalr before suspend_restore_regs
> So it's better to replace jalr with jr.
> 
> Signed-off-by: Song Shuai <suagrfillet@gmail.com>
> ---
>  arch/riscv/kernel/hibernate-asm.S | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)

Here is the summary with links:
  - riscv: hibernation: Replace jalr with jr before suspend_restore_regs
    https://git.kernel.org/riscv/c/650ea2a1dd96

You are awesome, thank you!
  

Patch

diff --git a/arch/riscv/kernel/hibernate-asm.S b/arch/riscv/kernel/hibernate-asm.S
index effaf5ca5da0..5c76671c7e15 100644
--- a/arch/riscv/kernel/hibernate-asm.S
+++ b/arch/riscv/kernel/hibernate-asm.S
@@ -50,7 +50,7 @@  ENTRY(hibernate_restore_image)
 	REG_L	s4, restore_pblist
 	REG_L	a1, relocated_restore_code
 
-	jalr	a1
+	jr	a1
 END(hibernate_restore_image)
 
 /*
@@ -73,5 +73,5 @@  ENTRY(hibernate_core_restore_code)
 	REG_L	s4, HIBERN_PBE_NEXT(s4)
 	bnez	s4, .Lcopy
 
-	jalr	s2
+	jr	s2
 END(hibernate_core_restore_code)