Date: Fri, 18 Mar 2016 01:30:26 +0800 From: "dfh0522 ." <dfh0522@gmail.com> To: royger@freebsd.org, brahmann@lifec0re.net Cc: freebsd-virtualization@freebsd.org Subject: Re: ports/Xen on CURRENT, error: ELF start or entries are out of bounds. Message-ID: <CAG5Ns1%2BmpFp8uQHEhfzBdgvfeiEK5pm9aar7QPitYiea7BOO7A@mail.gmail.com> In-Reply-To: <CAG5Ns1%2Bor290mxhFFUPGQfm2HTo1E5FSCA_J-sR6L4Z_UL1G8Q@mail.gmail.com> References: <CAG5Ns1%2Bor290mxhFFUPGQfm2HTo1E5FSCA_J-sR6L4Z_UL1G8Q@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
> I've just noticied this issue, it's probably due to an issue with kernel > linking. It seems like the physical address specified in the ELF program > headers is wrong. I'm currently trying to bisect it in order to find the > commit that caused it, in the meantime I can confirm that r295683 and > older revisions should work fine. I need to add WITHOUT_ELFCOPY_AS_OBJCOPY after r296096, > $ readelf -l /boot/kernel/kernel # readelf -l /boot/kernel/kernel Elf file type is EXEC (Executable file) Entry point 0xffffffff802fb000 There are 6 program headers, starting at offset 64 Program Headers: Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align PHDR 0x0000000000000040 0xffffffff80200040 0x0000000000200040 0x0000000000000150 0x0000000000000150 R E 0x8 INTERP 0x0000000000000190 0xffffffff80200190 0x0000000000200190 0x000000000000000d 0x000000000000000d R 0x1 [Requesting program interpreter: /red/herring] LOAD 0x0000000000000000 0xffffffff80200000 0x0000000000200000 0x000000000147b978 0x000000000147b978 R E 0x200000 LOAD 0x000000000147b978 0xffffffff8187b978 0x000000000187b978 0x0000000000134e40 0x000000000056e448 RW 0x200000 DYNAMIC 0x000000000147b978 0xffffffff8187b978 0x000000000187b978 0x00000000000000d0 0x00000000000000d0 RW 0x8 GNU_STACK 0x0000000000000000 0x0000000000000000 0x0000000000000000 0x0000000000000000 0x0000000000000000 RWE 0x8 Section to Segment mapping: Segment Sections... 00 01 .interp 02 .interp .hash .dynsym .dynstr .text .rodata set_sysctl_set set_sysinit_set set_sysuninit_set set_modmetadata_set set_kdb_dbbe_set set_ah_chips set_ah_rfs set_kbddriver_set set_sdt_providers_set set_sdt_probes_set set_sdt_argtypes_set set_cons_set set_gdb_dbgport_set usb_host_id set_vt_drv_set set_ratectl_set set_crypto_set set_ieee80211_ioctl_getset set_ieee80211_ioctl_setset set_scanner_set set_videodriver_set set_scterm_set set_scrndr_set set_vga_set kern_conf .eh_frame 03 .dynamic .got.plt .data set_pcpu .bss 04 .dynamic 05 # objcopy --version GNU objcopy 2.17.50 [FreeBSD] 2007-07-03 > With the non-working kernel? # readelf -l /boot/kernel.old/kernel Elf file type is EXEC (Executable file) Entry point 0xffffffff802fb000 There are 6 program headers, starting at offset 64 Program Headers: Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align PHDR 0x0000000000000040 0xffffffff80200040 0xffffffff80200040 0x0000000000000150 0x0000000000000150 R E 0x8 INTERP 0x0000000000000190 0xffffffff80200190 0xffffffff80200190 0x000000000000000d 0x000000000000000d R 0x1 [Requesting program interpreter: /red/herring] LOAD 0x0000000000000000 0xffffffff80200000 0xffffffff80200000 0x000000000147a418 0x000000000147a418 R E 0x200000 LOAD 0x000000000147a418 0xffffffff8187a418 0xffffffff8187a418 0x0000000000134aa0 0x000000000056e0a8 RW 0x200000 DYNAMIC 0x000000000147a418 0xffffffff8187a418 0xffffffff8187a418 0x00000000000000d0 0x00000000000000d0 RW 0x8 GNU_STACK 0x0000000000000000 0x0000000000000000 0x0000000000000000 0x0000000000000000 0x0000000000000000 RWE 0x8 Section to Segment mapping: Segment Sections... 00 01 .interp 02 .interp .hash .dynsym .dynstr .text .rodata set_sysctl_set set_sysinit_set set_sysuninit_set set_modmetadata_set set_kdb_dbbe_set set_ah_chips set_ah_rfs set_kbddriver_set set_sdt_providers_set set_sdt_probes_set set_sdt_argtypes_set set_cons_set set_gdb_dbgport_set usb_host_id set_vt_drv_set set_ratectl_set set_crypto_set set_ieee80211_ioctl_getset set_ieee80211_ioctl_setset set_scanner_set set_videodriver_set set_scterm_set set_scrndr_set set_vga_set kern_conf .eh_frame 03 .dynamic .got.plt .data set_pcpu .bss 04 .dynamic 05 # objcopy --version objcopy (elftoolchain r3400M) Cheers, JH.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAG5Ns1%2BmpFp8uQHEhfzBdgvfeiEK5pm9aar7QPitYiea7BOO7A>