[PATCH] non-x86/symbols: check table sizes don't change between linking passes 2 and 3

Jan Beulich posted 1 patch 4 months, 1 week ago
Failed in applying to current master (apply log)
[PATCH] non-x86/symbols: check table sizes don't change between linking passes 2 and 3
Posted by Jan Beulich 4 months, 1 week ago
Extend commit 1df11ccceb1a ("symbols: check table sizes don't change
between linking passes 2 and 3") to other ports as well.

Signed-off-by: Jan Beulich <jbeulich@suse.com>

--- a/xen/arch/arm/Makefile
+++ b/xen/arch/arm/Makefile
@@ -99,6 +99,7 @@ $(TARGET)-syms: $(objtree)/prelink.o $(o
 		| $(objtree)/tools/symbols $(all_symbols) --sysv --sort \
 		> $(dot-target).2.S
 	$(MAKE) $(build)=$(@D) $(dot-target).2.o
+	$(call compare-symbol-tables, $(dot-target).1.o, $(dot-target).2.o)
 	$(LD) $(XEN_LDFLAGS) -T $(obj)/xen.lds $< $(build_id_linker) \
 	    $(dot-target).2.o -o $@
 	$(NM) -pa --format=sysv $@ \
--- a/xen/arch/ppc/Makefile
+++ b/xen/arch/ppc/Makefile
@@ -26,6 +26,7 @@ $(TARGET)-syms: $(objtree)/prelink.o $(o
 		| $(objtree)/tools/symbols $(all_symbols) --sysv --sort \
 		> $(dot-target).2.S
 	$(MAKE) $(build)=$(@D) $(dot-target).2.o
+	$(call compare-symbol-tables, $(dot-target).1.o, $(dot-target).2.o)
 	$(LD) $(XEN_LDFLAGS) -T $(obj)/xen.lds $< $(build_id_linker) \
 	    $(dot-target).2.o -o $@
 	$(NM) -pa --format=sysv $@ \
--- a/xen/arch/riscv/Makefile
+++ b/xen/arch/riscv/Makefile
@@ -40,6 +40,7 @@ $(TARGET)-syms: $(objtree)/prelink.o $(o
 		| $(objtree)/tools/symbols $(all_symbols) --sysv --sort \
 		> $(dot-target).2.S
 	$(MAKE) $(build)=$(@D) $(dot-target).2.o
+	$(call compare-symbol-tables, $(dot-target).1.o, $(dot-target).2.o)
 	$(LD) $(XEN_LDFLAGS) -T $(obj)/xen.lds $< $(build_id_linker) \
 	    $(dot-target).2.o -o $@
 	$(NM) -pa --format=sysv $@ \
Re: [PATCH] non-x86/symbols: check table sizes don't change between linking passes 2 and 3
Posted by Oleksii Kurochko 4 months ago
On 2/2/26 3:45 PM, Jan Beulich wrote:
> Extend commit 1df11ccceb1a ("symbols: check table sizes don't change
> between linking passes 2 and 3") to other ports as well.
>
> Signed-off-by: Jan Beulich <jbeulich@suse.com>
>
> --- a/xen/arch/arm/Makefile
> +++ b/xen/arch/arm/Makefile
> @@ -99,6 +99,7 @@ $(TARGET)-syms: $(objtree)/prelink.o $(o
>   		| $(objtree)/tools/symbols $(all_symbols) --sysv --sort \
>   		> $(dot-target).2.S
>   	$(MAKE) $(build)=$(@D) $(dot-target).2.o
> +	$(call compare-symbol-tables, $(dot-target).1.o, $(dot-target).2.o)
>   	$(LD) $(XEN_LDFLAGS) -T $(obj)/xen.lds $< $(build_id_linker) \
>   	    $(dot-target).2.o -o $@
>   	$(NM) -pa --format=sysv $@ \
> --- a/xen/arch/ppc/Makefile
> +++ b/xen/arch/ppc/Makefile
> @@ -26,6 +26,7 @@ $(TARGET)-syms: $(objtree)/prelink.o $(o
>   		| $(objtree)/tools/symbols $(all_symbols) --sysv --sort \
>   		> $(dot-target).2.S
>   	$(MAKE) $(build)=$(@D) $(dot-target).2.o
> +	$(call compare-symbol-tables, $(dot-target).1.o, $(dot-target).2.o)
>   	$(LD) $(XEN_LDFLAGS) -T $(obj)/xen.lds $< $(build_id_linker) \
>   	    $(dot-target).2.o -o $@
>   	$(NM) -pa --format=sysv $@ \
> --- a/xen/arch/riscv/Makefile
> +++ b/xen/arch/riscv/Makefile
> @@ -40,6 +40,7 @@ $(TARGET)-syms: $(objtree)/prelink.o $(o
>   		| $(objtree)/tools/symbols $(all_symbols) --sysv --sort \
>   		> $(dot-target).2.S
>   	$(MAKE) $(build)=$(@D) $(dot-target).2.o
> +	$(call compare-symbol-tables, $(dot-target).1.o, $(dot-target).2.o)
>   	$(LD) $(XEN_LDFLAGS) -T $(obj)/xen.lds $< $(build_id_linker) \
>   	    $(dot-target).2.o -o $@
>   	$(NM) -pa --format=sysv $@ \

Reviewed-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>

Thanks.

~ Oleksii
Re: [PATCH] non-x86/symbols: check table sizes don't change between linking passes 2 and 3
Posted by Roger Pau Monné 4 months ago
On Mon, Feb 02, 2026 at 03:45:37PM +0100, Jan Beulich wrote:
> Extend commit 1df11ccceb1a ("symbols: check table sizes don't change
> between linking passes 2 and 3") to other ports as well.
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

Acked-by: Roger Pau Monné <roger.pau@citrix.com>

Do you know whether the risc/ppc builds in the CI are OK after this?

Thanks, Roger.

Re: [PATCH] non-x86/symbols: check table sizes don't change between linking passes 2 and 3
Posted by Jan Beulich 4 months ago
On 10.02.2026 15:37, Roger Pau Monné wrote:
> On Mon, Feb 02, 2026 at 03:45:37PM +0100, Jan Beulich wrote:
>> Extend commit 1df11ccceb1a ("symbols: check table sizes don't change
>> between linking passes 2 and 3") to other ports as well.
>>
>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> 
> Acked-by: Roger Pau Monné <roger.pau@citrix.com>

Thanks.

> Do you know whether the risc/ppc builds in the CI are OK after this?

Not yet, the pre-push testing will show. They are okay in my local builds.

Jan

Re: [PATCH] non-x86/symbols: check table sizes don't change between linking passes 2 and 3
Posted by Bertrand Marquis 4 months, 1 week ago
Hi Jan,

I checked that xen on arm is still compiling properly with that so

> On 2 Feb 2026, at 15:45, Jan Beulich <jbeulich@suse.com> wrote:
> 
> Extend commit 1df11ccceb1a ("symbols: check table sizes don't change
> between linking passes 2 and 3") to other ports as well.
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

For Arm:
Acked-by: Bertrand Marquis <bertrand.marquis@arm.com>

Cheers
Bertrand

> 
> --- a/xen/arch/arm/Makefile
> +++ b/xen/arch/arm/Makefile
> @@ -99,6 +99,7 @@ $(TARGET)-syms: $(objtree)/prelink.o $(o
> | $(objtree)/tools/symbols $(all_symbols) --sysv --sort \
> > $(dot-target).2.S
> $(MAKE) $(build)=$(@D) $(dot-target).2.o
> + $(call compare-symbol-tables, $(dot-target).1.o, $(dot-target).2.o)
> $(LD) $(XEN_LDFLAGS) -T $(obj)/xen.lds $< $(build_id_linker) \
>    $(dot-target).2.o -o $@
> $(NM) -pa --format=sysv $@ \
> --- a/xen/arch/ppc/Makefile
> +++ b/xen/arch/ppc/Makefile
> @@ -26,6 +26,7 @@ $(TARGET)-syms: $(objtree)/prelink.o $(o
> | $(objtree)/tools/symbols $(all_symbols) --sysv --sort \
> > $(dot-target).2.S
> $(MAKE) $(build)=$(@D) $(dot-target).2.o
> + $(call compare-symbol-tables, $(dot-target).1.o, $(dot-target).2.o)
> $(LD) $(XEN_LDFLAGS) -T $(obj)/xen.lds $< $(build_id_linker) \
>    $(dot-target).2.o -o $@
> $(NM) -pa --format=sysv $@ \
> --- a/xen/arch/riscv/Makefile
> +++ b/xen/arch/riscv/Makefile
> @@ -40,6 +40,7 @@ $(TARGET)-syms: $(objtree)/prelink.o $(o
> | $(objtree)/tools/symbols $(all_symbols) --sysv --sort \
> > $(dot-target).2.S
> $(MAKE) $(build)=$(@D) $(dot-target).2.o
> + $(call compare-symbol-tables, $(dot-target).1.o, $(dot-target).2.o)
> $(LD) $(XEN_LDFLAGS) -T $(obj)/xen.lds $< $(build_id_linker) \
>    $(dot-target).2.o -o $@
> $(NM) -pa --format=sysv $@ \