aboutsummaryrefslogtreecommitdiff
path: root/arch/arm64/kernel/hyp-stub.S
diff options
context:
space:
mode:
authorAlex Shi <alex.shi@linaro.org>2017-06-28 22:13:59 +0800
committerAlex Shi <alex.shi@linaro.org>2017-06-28 22:13:59 +0800
commitd87abdcbf8871b5ee58083b3bdf216ba406224b9 (patch)
tree5a25ee77e6be9107364139f02025ff6d0e50ab98 /arch/arm64/kernel/hyp-stub.S
parent428ee0d0d38f2cf5b1c4d584f7b2eee76d7a992e (diff)
parent89912966d1c4cf3c48f632fdc571232b5b0bdd63 (diff)
Merge branch 'lsk/kdump/for-v4.4' into linux-linaro-lsk-v4.4
Diffstat (limited to 'arch/arm64/kernel/hyp-stub.S')
-rw-r--r--arch/arm64/kernel/hyp-stub.S10
1 files changed, 9 insertions, 1 deletions
diff --git a/arch/arm64/kernel/hyp-stub.S b/arch/arm64/kernel/hyp-stub.S
index 8727f4490772..d3b5f75e652e 100644
--- a/arch/arm64/kernel/hyp-stub.S
+++ b/arch/arm64/kernel/hyp-stub.S
@@ -71,8 +71,16 @@ el1_sync:
msr vbar_el2, x1
b 9f
+2: cmp x0, #HVC_SOFT_RESTART
+ b.ne 3f
+ mov x0, x2
+ mov x2, x4
+ mov x4, x1
+ mov x1, x3
+ br x4 // no return
+
/* Someone called kvm_call_hyp() against the hyp-stub... */
-2: mov x0, #ARM_EXCEPTION_HYP_GONE
+3: mov x0, #ARM_EXCEPTION_HYP_GONE
9: eret
ENDPROC(el1_sync)