Don't modify the FID when forwarding SMCs.
If the VM called as 32-bit, it should be forwarded as such. The same
goes for 64-bit. The causes problems when the target doesn't accept both
versions.
Change-Id: I229b489030bf84a0093254acda224645746600e0
diff --git a/src/arch/aarch64/hypervisor/handler.c b/src/arch/aarch64/hypervisor/handler.c
index 0658051..4f4ec44 100644
--- a/src/arch/aarch64/hypervisor/handler.c
+++ b/src/arch/aarch64/hypervisor/handler.c
@@ -263,9 +263,9 @@
uint32_t client_id = vcpu->vm->id;
if (smc_check_client_privileges(vcpu)) {
- *ret = smc64(func, vcpu->regs.r[1], vcpu->regs.r[2],
- vcpu->regs.r[3], vcpu->regs.r[4], vcpu->regs.r[5],
- vcpu->regs.r[6], client_id);
+ *ret = smc_forward(func, vcpu->regs.r[1], vcpu->regs.r[2],
+ vcpu->regs.r[3], vcpu->regs.r[4],
+ vcpu->regs.r[5], vcpu->regs.r[6], client_id);
return true;
}