[PATCH] arm64: vdso: remove two .altinstructions related symbols

Jisheng Zhang posted 1 patch 2 years, 1 month ago
arch/arm64/kernel/vdso/vdso.lds.S | 2 --
1 file changed, 2 deletions(-)
[PATCH] arm64: vdso: remove two .altinstructions related symbols
Posted by Jisheng Zhang 2 years, 1 month ago
The two symbols __alt_instructions and __alt_instructions_end are not
used, remove them.

Signed-off-by: Jisheng Zhang <jszhang@kernel.org>
---
 arch/arm64/kernel/vdso/vdso.lds.S | 2 --
 1 file changed, 2 deletions(-)

diff --git a/arch/arm64/kernel/vdso/vdso.lds.S b/arch/arm64/kernel/vdso/vdso.lds.S
index 6028f1fe2d1c..45354f2ddf70 100644
--- a/arch/arm64/kernel/vdso/vdso.lds.S
+++ b/arch/arm64/kernel/vdso/vdso.lds.S
@@ -50,9 +50,7 @@ SECTIONS
 
 	. = ALIGN(4);
 	.altinstructions : {
-		__alt_instructions = .;
 		*(.altinstructions)
-		__alt_instructions_end = .;
 	}
 
 	.dynamic	: { *(.dynamic) }		:text	:dynamic
-- 
2.40.1
Re: [PATCH] arm64: vdso: remove two .altinstructions related symbols
Posted by Will Deacon 2 years, 1 month ago
On Thu, 27 Jul 2023 01:36:19 +0800, Jisheng Zhang wrote:
> The two symbols __alt_instructions and __alt_instructions_end are not
> used, remove them.
> 
> 

Applied to arm64 (for-next/misc), thanks!

[1/1] arm64: vdso: remove two .altinstructions related symbols
      https://git.kernel.org/arm64/c/a96a7a7ddf95

Cheers,
-- 
Will

https://fixes.arm64.dev
https://next.arm64.dev
https://will.arm64.dev
Re: [PATCH] arm64: vdso: remove two .altinstructions related symbols
Posted by Will Deacon 2 years, 1 month ago
On Thu, Jul 27, 2023 at 01:36:19AM +0800, Jisheng Zhang wrote:
> The two symbols __alt_instructions and __alt_instructions_end are not
> used, remove them.
> 
> Signed-off-by: Jisheng Zhang <jszhang@kernel.org>
> ---
>  arch/arm64/kernel/vdso/vdso.lds.S | 2 --
>  1 file changed, 2 deletions(-)
> 
> diff --git a/arch/arm64/kernel/vdso/vdso.lds.S b/arch/arm64/kernel/vdso/vdso.lds.S
> index 6028f1fe2d1c..45354f2ddf70 100644
> --- a/arch/arm64/kernel/vdso/vdso.lds.S
> +++ b/arch/arm64/kernel/vdso/vdso.lds.S
> @@ -50,9 +50,7 @@ SECTIONS
>  
>  	. = ALIGN(4);
>  	.altinstructions : {
> -		__alt_instructions = .;
>  		*(.altinstructions)
> -		__alt_instructions_end = .;
>  	}

If we don't need the symbols, then why do we need this section at all?

Will
Re: [PATCH] arm64: vdso: remove two .altinstructions related symbols
Posted by Joey Gouly 2 years, 1 month ago
Hi,

On Thu, Jul 27, 2023 at 11:19:27AM +0100, Will Deacon wrote:
> On Thu, Jul 27, 2023 at 01:36:19AM +0800, Jisheng Zhang wrote:
> > The two symbols __alt_instructions and __alt_instructions_end are not
> > used, remove them.
> > 
> > Signed-off-by: Jisheng Zhang <jszhang@kernel.org>
> > ---
> >  arch/arm64/kernel/vdso/vdso.lds.S | 2 --
> >  1 file changed, 2 deletions(-)
> > 
> > diff --git a/arch/arm64/kernel/vdso/vdso.lds.S b/arch/arm64/kernel/vdso/vdso.lds.S
> > index 6028f1fe2d1c..45354f2ddf70 100644
> > --- a/arch/arm64/kernel/vdso/vdso.lds.S
> > +++ b/arch/arm64/kernel/vdso/vdso.lds.S
> > @@ -50,9 +50,7 @@ SECTIONS
> >  
> >  	. = ALIGN(4);
> >  	.altinstructions : {
> > -		__alt_instructions = .;
> >  		*(.altinstructions)
> > -		__alt_instructions_end = .;
> >  	}
> 
> If we don't need the symbols, then why do we need this section at all?

Looks like it was a copy/paste from my commit 4e3bca8f7cdd ("arm64: alternative: patch alternatives in the vDSO").
The VDSO patching code searches for a section named '.altinstructions' by
reading the VDSO as an ELF file, and doesn't use the __alt_instructions /
__alt_instructions_end symbols.  The kernel patching code uses the
__alt_instructions symbol (from the vmlinux.ld.S linker script).

So it's safe to remove these, but the section itself needs to stay.

Thanks,
Joey