aboutsummaryrefslogtreecommitdiffstats
path: root/executor
diff options
context:
space:
mode:
authorAlexander Potapenko <glider@google.com>2025-08-07 14:59:55 +0200
committerAlexander Potapenko <glider@google.com>2025-08-08 11:59:45 +0000
commite11f716666bf4dbd826b5639c485b4090095f3d5 (patch)
tree2fce16b61f5aad616f83cc4dea20b011bd20e37e /executor
parente0aca11c53ee047aedcf0fd91a5b0ff71dacd0a8 (diff)
executor: arm64: syzos: fix the constraints in gicv3_cpu_init()
Somehow we were using an input constraint instead of an output one in the assembly code performing a read of ICC_SRE_EL1 into a GP register.
Diffstat (limited to 'executor')
-rw-r--r--executor/common_kvm_arm64_syzos.h3
1 files changed, 1 insertions, 2 deletions
diff --git a/executor/common_kvm_arm64_syzos.h b/executor/common_kvm_arm64_syzos.h
index 54d6665f0..0253b6b96 100644
--- a/executor/common_kvm_arm64_syzos.h
+++ b/executor/common_kvm_arm64_syzos.h
@@ -571,8 +571,7 @@ GUEST_CODE static void gicv3_cpu_init(uint32 cpu)
// Enable the GIC system register (ICC_*) access.
uint64 icc_sre_el1 = 0;
asm volatile("mrs %0, " ICC_SRE_EL1
- :
- : "r"(icc_sre_el1));
+ : "=r"(icc_sre_el1));
icc_sre_el1 |= ICC_SRE_EL1_SRE;
asm volatile("msr " ICC_SRE_EL1 ", %0"
: