]> xenbits.xensource.com Git - mini-os.git/commitdiff
mini-os: use -m elf_i386 for final linking
authorJuergen Gross <jgross@suse.com>
Thu, 16 Apr 2020 13:17:15 +0000 (15:17 +0200)
committerWei Liu <wl@xen.org>
Thu, 16 Apr 2020 13:29:16 +0000 (14:29 +0100)
Using the standard -m elf_x86_64 for 64-bit mini-os results in the
first section (.text) to start only at offset 2MB in the binary file.

Quoting Andrew Cooper on that topic:

  Specifically, 64bit emulation appears to include "align primary
  sections to 2M so your OS can make better use of superpages even when
  mmap()ing", with no way I can spot to override this in the linker
  file.

Using -m elf_i386 avoids that problem without any visible disadvantage.

Signed-off-by: Juergen Gross <jgross@suse.com>
Reviewed-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
arch/x86/arch.mk

index c87885fafdc9393cec558c2c6efb1ed190062d97..00028a0510e25b6d4972c470f2edbd9dd90b9877 100644 (file)
@@ -26,3 +26,5 @@ ifeq ($(CONFIG_PARAVIRT),n)
 ARCH_LDFLAGS_FINAL := --oformat=elf32-i386
 ARCH_AS_DEPS += x86_hvm.S
 endif
+
+ARCH_LDFLAGS_FINAL += -m elf_i386