On 20/04/17 10:23, Arnd Bergmann wrote: > On Thu, Apr 20, 2017 at 9:56 AM, kernelci.org bot <bot@xxxxxxxxxxxx> wrote: [...] >> multi_v7_defconfig+CONFIG_THUMB2_KERNEL=y+CONFIG_ARM_MODULE_PLTS=y (arm) — >> FAIL, 1 error, 0 warnings, 0 section mismatches >> >> Errors: >> arch/arm/kernel/hyp-stub.S:128: Error: invalid immediate for address >> calculation (value = 0x00000004) > > I have not seen this one so far, need to investigate more. A quick look points > to this line > > adr r7, __hyp_stub_vectors > > and the symbol it refers to was recently changed in > > commit bc845e4fbbbbe97bab3f1bcf688be0b5da420717 > Author: Marc Zyngier <marc.zyngier@xxxxxxx> > Date: Mon Apr 3 19:37:53 2017 +0100 > > ARM: KVM: Implement HVC_RESET_VECTORS stub hypercall in the init code > > In order to restore HYP mode to its original condition, KVM currently > implements __kvm_hyp_reset(). As we're moving towards a hyp-stub > defined API, it becomes necessary to implement HVC_RESET_VECTORS. > > This patch adds the HVC_RESET_VECTORS hypercall to the KVM init > code, which so far lacked any form of hypercall support. > > Tested-by: Keerthy <j-keerthy@xxxxxx> > Acked-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxx> > Acked-by: Catalin Marinas <catalin.marinas@xxxxxxx> > Signed-off-by: Marc Zyngier <marc.zyngier@xxxxxxx> > Signed-off-by: Christoffer Dall <cdall@xxxxxxxxxx> > > diff --git a/arch/arm/kernel/hyp-stub.S b/arch/arm/kernel/hyp-stub.S > index e637854335aa..675c50f5cb5c 100644 > --- a/arch/arm/kernel/hyp-stub.S > +++ b/arch/arm/kernel/hyp-stub.S > @@ -280,7 +280,7 @@ ENDPROC(__hyp_reset_vectors) > #endif > > .align 5 > -__hyp_stub_vectors: > +ENTRY(__hyp_stub_vectors) > __hyp_stub_reset: W(b) . > __hyp_stub_und: W(b) . > __hyp_stub_svc: W(b) . > > but I don't see why that would cause the build error. Ah, my bad. With Thumb-2, ADR defaults to being the short (16 bit) form, which cannot encode the displacement (and __hyp_stub_vectors now being exported, it probably lives further away than it used to). We need the 32 bit version. The fix is to write the faulting line as: W(adr) r7, __hyp_stub_vectors I'll post a proper patch in a minute. Thanks, M. -- Jazz is not dead. It just smells funny...