From mboxrd@z Thu Jan 1 00:00:00 1970 From: Albert ARIBAUD Date: Tue, 8 Oct 2013 10:13:23 +0200 Subject: [U-Boot] [PATCH 0/4] arm64: rela relocation In-Reply-To: References: <1380840511-7414-1-git-send-email-scottwood@freescale.com> <4715a8.6877.141842de124.Coremail.fenghua@phytium.com.cn> <20131005095522.7e590403@lilith> Message-ID: <20131008101323.33f616eb@lilith> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Hi FengHua, On Tue, 8 Oct 2013 11:32:39 +0800 (GMT+08:00), FengHua wrote: > > > Hi FengHua, > > > > On Fri, 4 Oct 2013 23:55:01 +0800 (GMT+08:00), FengHua > > wrote: > > > > > > > > > > > > arm64: rela relocation > > > > > > > > This lets us remove the manual relocation stuff from the arm64 patchset > > > > (the symbol itself is removed by this patchset, but not all the new > > > > manual relocations added by the arm64 patchset). > > > > > > > > I'm not terribly happy with the way relocate-rela is now, versus something > > > > cleaner that operates on the ELF file, but it's good enough for now and > > > > waiting longer to get rid of the manual relocations would be worse. > > > > > > > > This patchset is based on David's arm64 patchset v13. David, the first > > > > two patches should be applied before your arm64 patches. Maybe the > > > > fourth as well (except for the removal of the arm64 ifdef you added, > > > > which would then need to be squashed with your patch). The third patch > > > > should be squashed with your patches (plus you should remove the manual > > > > relocs). > > > > > > > > Scott Wood (4): > > > > arm64: Add tool to statically apply RELA relocations > > > > arm64: Turn u-boot.bin back into an ELF file after relocate-rela > > > > arm64: Non-manual relocation > > > > arm64: Make checkarmreloc accept arm64 relocations > > > > > > > > Makefile | 39 ++++++-- > > > > arch/arm/config.mk | 4 - > > > > arch/arm/cpu/armv8/config.mk | 1 - > > > > arch/arm/cpu/armv8/u-boot.lds | 32 +++++-- > > > > arch/arm/include/asm/config.h | 5 -- > > > > arch/arm/lib/crt0_64.S | 7 +- > > > > arch/arm/lib/relocate_64.S | 41 ++++----- > > > > include/configs/vexpress_aemv8a.h | 3 + > > > > tools/Makefile | 6 ++ > > > > tools/relocate-rela.c | 185 ++++++++++++++++++++++++++++++++++++++ > > > > 10 files changed, 276 insertions(+), 47 deletions(-) > > > > create mode 100644 tools/relocate-rela.c > > > > > > > Great, some fixups related with relocation could be removed. > > > I will modify arm64 patchset according this. > > > > Stop me if I'm missing something, but doesn't Scott's patch series need > > yours? And if you remove the manual relocas in yours, doesn't that make > > your series unable to function properly until Scott's series is applied > > too? > > > > If I am not mistaken, then maybe Scott's and your patches should be > > merged in a single series, with adequate attribution of course. > > > > > David > > > > Amicalement, > > -- > > Albert. > > > Yes, these two patches should work together. Yep, Scott pointed me to where my eyes would not look. Must have been a SEP field. :) > We'd better merge them to one patchset. > The point is we should make choice between CONFIG_NEED_MANUAL_RELOC > and relocation-rela tool before aarch64-gcc support rel > relocation format or maybe aarch64-gcc will never do it. > Another motivation to update arm64 patch is that it's too old > and got wrong when applied to current u-boot master. I am in favor of going for relocation-rela, if only because manual relocations are a major pain in the long run, so I want relocation handling to be automated. > Best Regards. > > David. Amicalement, -- Albert.