Re: [PATCH v2 2/2] riscv: Check that vdso does not contain any dynamic relocations

From: Guo Ren
Date: Tue Jul 09 2024 - 21:24:51 EST


On Fri, Jul 5, 2024 at 2:11 PM Alexandre Ghiti <alexghiti@xxxxxxxxxxxx> wrote:
>
> Like other architectures, use the common cmd_vdso_check to make sure of
> that.
>
> Signed-off-by: Alexandre Ghiti <alexghiti@xxxxxxxxxxxx>
> ---
> arch/riscv/kernel/vdso/Makefile | 9 +++++----
> 1 file changed, 5 insertions(+), 4 deletions(-)
>
> diff --git a/arch/riscv/kernel/vdso/Makefile b/arch/riscv/kernel/vdso/Makefile
> index c7e40bf36371..b5c73084e554 100644
> --- a/arch/riscv/kernel/vdso/Makefile
> +++ b/arch/riscv/kernel/vdso/Makefile
> @@ -45,7 +45,7 @@ $(obj)/vdso.o: $(obj)/vdso.so
>
> # link rule for the .so file, .lds has to be first
> $(obj)/vdso.so.dbg: $(obj)/vdso.lds $(obj-vdso) FORCE
> - $(call if_changed,vdsold)
> + $(call if_changed,vdsold_and_check)
> LDFLAGS_vdso.so.dbg = -shared -S -soname=linux-vdso.so.1 \
> --build-id=sha1 --hash-style=both --eh-frame-hdr
>
> @@ -65,7 +65,8 @@ include/generated/vdso-offsets.h: $(obj)/vdso.so.dbg FORCE
> # actual build commands
> # The DSO images are built using a special linker script
> # Make sure only to export the intended __vdso_xxx symbol offsets.
> -quiet_cmd_vdsold = VDSOLD $@
> - cmd_vdsold = $(LD) $(ld_flags) -T $(filter-out FORCE,$^) -o $@.tmp && \
> +quiet_cmd_vdsold_and_check = VDSOLD $@
> + cmd_vdsold_and_check = $(LD) $(ld_flags) -T $(filter-out FORCE,$^) -o $@.tmp && \
> $(OBJCOPY) $(patsubst %, -G __vdso_%, $(vdso-syms)) $@.tmp $@ && \
> - rm $@.tmp
> + rm $@.tmp && \
> + $(cmd_vdso_check)
This check is helpful for future development on riscv vdso. LGTM!

Reviewed-by: Guo Ren <guoren@xxxxxxxxxx>

> --
> 2.39.2
>


--
Best Regards
Guo Ren