i386: Remove unnecessary ALIGN() in vmlinux.lds.S From: Vivek Goyal o There seems to be one extra ALIGN(4096) before symbol __smp_alt_end. The only usage of __smp_alt_end is to mark the end of smp alternative sections so that this memory can be freed. As a physical page is freed one has to just make sure that there is no other data on the same page where __smp_alt_end is pointing. There is already a ALIGN(4096) after this section which should take care of the above issue. Hence it looks like the ALIGN(4096) before __smp_alt_end is redundant and not required. Signed-off-by: Vivek Goyal Signed-off-by: Andi Kleen --- arch/i386/kernel/vmlinux.lds.S | 6 ++++++ 1 files changed, 6 insertions(+) Index: linux/arch/i386/kernel/vmlinux.lds.S =================================================================== --- linux.orig/arch/i386/kernel/vmlinux.lds.S +++ linux/arch/i386/kernel/vmlinux.lds.S @@ -121,6 +121,12 @@ SECTIONS *(.smp_altinstr_replacement) __smp_alt_end = .; } + /* will be freed after init + * Following ALIGN() is required to make sure no other data falls on the + * same page where __smp_alt_end is pointing as that page might be freed + * after boot. Always make sure that ALIGN() directive is present after + * the section which contains __smp_alt_end. + */ . = ALIGN(4096); /* will be freed after init */