[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH v8 04/13] x86: properly calculate xen ELF end of image address
>>> On 29.09.16 at 00:51, <daniel.kiper@xxxxxxxxxx> wrote: > Currently xen ELF end of image address is calculated using first line from > "nm -nr xen/xen-syms" output. However, potentially it may contain symbol > address not related to the end of image in any way. It can happen if a symbol > is introduced with address larger than _end symbol address. Such situation > encountered when I linked xen ELF binary with xen/arch/x86/efi/relocs-dummy.S. > Then first line from "nm -nr xen/xen-syms" contained "ffff82d0c0000000 A > ALT_START" > and xen ELF image memory size was silently set to 1023 MiB. This issue > happened > because there is no check which symbol address is used to calculate end of > image address. So, let's fix it and take ELF end of image address by reading > _end symbol address from nm output. This way xen ELF image build process is > not prone to changes in order of nm output. > > This patch is prereq for "efi: build xen.gz with EFI code" patch which adds, > among others, xen/arch/x86/efi/relocs-dummy.S to xen.gz output. I still dislike how you put this. It would make a lot more sense if this extra paragraph came much earlier (perhaps right after the first sentence), and the rest of the description would then be slightly re-worded to fit this aspect. > --- a/xen/arch/x86/Makefile > +++ b/xen/arch/x86/Makefile > @@ -91,7 +91,7 @@ endif > > $(TARGET): $(TARGET)-syms $(efi-y) boot/mkelf32 > ./boot/mkelf32 $(notes_phdrs) $(TARGET)-syms $(TARGET) 0x100000 \ > - `$(NM) -nr $(TARGET)-syms | head -n 1 | sed -e 's/^\([^ ]*\).*/0x\1/'` > + `$(NM) $(TARGET)-syms | sed -ne 's/^\([^ ]*\) . _end$$/0x\1/p'` I thought we had agreed to use __2M_rwdata_end here. And also note that I had said "such that the command line argument here aligns with the first one on the previous line" in my reply to v7 regarding the indentation change. Jan _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx https://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |