The GOT has to be initially writable regardless of ifunc, even with relro, to apply relocations.