[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH] x86/boot: Fix build with LLVM toolchain
On Wed, Nov 6, 2024 at 11:45 AM Jan Beulich <jbeulich@xxxxxxxx> wrote: > > On 06.11.2024 12:34, Frediano Ziglio wrote: > > On Wed, Nov 6, 2024 at 10:59 AM Jan Beulich <jbeulich@xxxxxxxx> wrote: > >> > >> On 06.11.2024 07:56, Frediano Ziglio wrote: > >>> On Tue, Nov 5, 2024 at 5:06 PM Jan Beulich <jbeulich@xxxxxxxx> wrote: > >>>> > >>>> On 05.11.2024 17:35, Frediano Ziglio wrote: > >>>>> On Tue, Nov 5, 2024 at 3:32 PM Jan Beulich <jbeulich@xxxxxxxx> wrote: > >>>>>> > >>>>>> On 05.11.2024 15:55, Frediano Ziglio wrote: > >>>>>>> This toolchain generates different object and map files. > >>>>>>> Account for these changes. > >>>>>> > >>>>>> At least briefly mentioning what exactly the differences are would be > >>>>>> quite nice, imo. > >>>>>> > >>>>> > >>>>> What about. > >>>>> > >>>>> Object have 3 additional sections which must be handled by the linker > >>>>> script. > >>>> > >>>> I expect these sections are there in both cases. The difference, I > >>>> assume, > >>>> is that for the GNU linker they don't need mentioning in the linker > >>>> script. > >>>> Maybe that's what you mean to say, but to me at least the sentence can > >>>> also > >>>> be interpreted differently. > >>> > >>> Why do you expect such sections? They are used for dynamic symbols in > >>> shared objects, we don't use shared objects here. Normal object > >>> symbols are not handled by these sections. GNU compiler+linker (we > >>> link multiple objects together) do not generate these sections. So the > >>> comment looks correct to me. > >> > >> About every ELF object will have .symtab and .strtab, and many also a > >> separate .shstrtab. There's nothing "dynamic" about them. IOW - I'm > >> confused by your reply. > > > > I checked the object files and there are no such sections using GNU > > toolchain. > > I think I checked every *.o that's under boot/, and they all have these three > sections. Can you clarify which one(s) specifically you checked? > > Jan $ gcc --version gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0 Copyright (C) 2021 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. $ ld --version GNU ld (GNU Binutils for Ubuntu) 2.38 Copyright (C) 2022 Free Software Foundation, Inc. This program is free software; you may redistribute it under the terms of the GNU General Public Licence version 3 or (at your option) a later version. This program has absolutely no warranty. $ find xen/normal/ xen/pvh/ -name \*.o | xargs -ifilename sh -c 'objdump -x filename' | grep -e \\. shstrtab -e \\.strtab -e \\.symtab (xen/normal and xen/pvh are the build directory, with different configurations) I'm saying that's possibly why the linker scripts didn't need to specify these sections. Frediano
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |