Like done previously for the hypervisor and elsewhere. 1: suppress GNU ld 2.39 warning about RWX load segments 2: silence GNU ld 2.39 warning about executable stacks Jan
On 29/09/2022 11:03, Jan Beulich wrote: > Like done previously for the hypervisor and elsewhere. > > 1: suppress GNU ld 2.39 warning about RWX load segments > 2: silence GNU ld 2.39 warning about executable stacks I've taken these, and dropped the `-no-pie`, but there's something else too. $readelf -Wa tests/example/test-hvm64-example ... No version information found in this file. Displaying notes found in: .note Owner Data size Description GNU 0x00000020 NT_GNU_PROPERTY_TYPE_0 Properties: x86 feature used: x86, <corrupt type (0) datasz: 0xc0010002> readelf: Warning: note with invalid namesz and/or descsz found at offset 0x30 readelf: Warning: type: 0x12, namesize: 0x00000004, descsize: 0x00000004, alignment: 8 It's only hvm64 which reads as corrupt, so I think there's some collateral damage with the conversion between ELF64 and ELF32. ~Andrew
On 03.10.2022 15:44, Andrew Cooper wrote: > On 29/09/2022 11:03, Jan Beulich wrote: >> Like done previously for the hypervisor and elsewhere. >> >> 1: suppress GNU ld 2.39 warning about RWX load segments >> 2: silence GNU ld 2.39 warning about executable stacks > > I've taken these, and dropped the `-no-pie`, but there's something else too. > > $readelf -Wa tests/example/test-hvm64-example > ... > > No version information found in this file. > > Displaying notes found in: .note > Owner Data size Description > GNU 0x00000020 NT_GNU_PROPERTY_TYPE_0 > Properties: x86 feature used: x86, <corrupt type (0) datasz: 0xc0010002> > > readelf: Warning: note with invalid namesz and/or descsz found at offset > 0x30 > readelf: Warning: type: 0x12, namesize: 0x00000004, descsize: > 0x00000004, alignment: 8 > > > It's only hvm64 which reads as corrupt, so I think there's some > collateral damage with the conversion between ELF64 and ELF32. Iirc there was a binary-incompatible change (accompanying an incompatible change to the ELF spec) to how notes are generated / processed for 64-bit objects (some hand waving involved here, as this did happen quite a while back). I assume the .note section(s) will need converting (to insert / remove padding) in the course of converting between ELF32 and ELF64. Jan
© 2016 - 2024 Red Hat, Inc.