On Tue, Jan 07, 2020 at 08:51:14PM +0100, Ard Biesheuvel wrote: > > > > Yeah. I have just reinstalled Ubuntu Trusty in a VM, which has > > binutils 2.4 and has a GCC 4.6 package available, but I haven't tried > > building the 64-bit kernel yet. > > > > I see the same thing: all GOT entries are gone when using -include to > set the pragma, with the exception of the first 0x18 bytes of the > .got.plt section, which we can ignore. > > So in summary, we should be able ASSERT() in the linker script that > (_egot - _got) <= 3 * word size, and get rid of all the GOT fixup code > entirely. Or perhaps it is better to add a section marker, and assert > that the *(.got) part is really empty. Great!