Having ALIGN() inside a section definition usually makes sense only with
a label definition following (an exception case is a few lines out of
context, where cache line sharing is intended to be avoided).
Constituents of .bss.page_aligned need to specify their own alignment
correctly anyway, or else they're susceptible to link order changing.
This requirement is already met: Arm-specific code has no such object,
while common (EFI) code has another one. That one has suitable alignment
specified.
Signed-off-by: Jan Beulich <jbeulich@suse.com>
---
Note how RISC-V had this dropped pretty recently.
--- a/xen/arch/arm/xen.lds.S
+++ b/xen/arch/arm/xen.lds.S
@@ -199,7 +199,6 @@ SECTIONS
.bss : { /* BSS */
__bss_start = .;
*(.bss.stack_aligned)
- . = ALIGN(PAGE_SIZE);
*(.bss.page_aligned)
. = ALIGN(PAGE_SIZE);
__per_cpu_start = .;
On Wed, 14 Jun 2023, Jan Beulich wrote: > Having ALIGN() inside a section definition usually makes sense only with > a label definition following (an exception case is a few lines out of > context, where cache line sharing is intended to be avoided). > Constituents of .bss.page_aligned need to specify their own alignment > correctly anyway, or else they're susceptible to link order changing. > This requirement is already met: Arm-specific code has no such object, > while common (EFI) code has another one. That one has suitable alignment > specified. > > Signed-off-by: Jan Beulich <jbeulich@suse.com> Acked-by: Stefano Stabellini <sstabellini@kernel.org> > --- > Note how RISC-V had this dropped pretty recently. > > --- a/xen/arch/arm/xen.lds.S > +++ b/xen/arch/arm/xen.lds.S > @@ -199,7 +199,6 @@ SECTIONS > .bss : { /* BSS */ > __bss_start = .; > *(.bss.stack_aligned) > - . = ALIGN(PAGE_SIZE); > *(.bss.page_aligned) > . = ALIGN(PAGE_SIZE); > __per_cpu_start = .; >
© 2016 - 2024 Red Hat, Inc.