1 Star 0 Fork 131

KuhnChen/src-qemu

forked from src-openEuler/qemu 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
arm-cpu-Fixed-function-undefined-error-at-compile-ti.patch 2.23 KB
一键复制 编辑 原始数据 按行查看 历史
From 6d795b30ff09bc1f799daa454f776d682cc77197 Mon Sep 17 00:00:00 2001
From: zhanghao1 <zhanghao1@kylinos.cn>
Date: Tue, 11 May 2021 20:17:16 +0800
Subject: [PATCH] arm/cpu: Fixed function undefined error at compile time under
arm
Add the compilation option CONFIG_KVM while using
"kvm_arm_cpu_feature_supported" and "kvm_arm_get_one_reg".
In arm, the default value of CONFIG_KVM is no.
While the target is arm, the compilation fails because
the function "kvm_arm_cpu_feature_supporte" is declared
or the function "kvm_arm_get_one_reg" is not defined.
Signed-off-by: zhanghao1 <zhanghao1@kylinos.cn>
---
target/arm/helper.c | 4 ++++
target/arm/kvm_arm.h | 4 ++++
2 files changed, 8 insertions(+)
diff --git a/target/arm/helper.c b/target/arm/helper.c
index bddd355fa0..9d2b2659f6 100644
--- a/target/arm/helper.c
+++ b/target/arm/helper.c
@@ -284,6 +284,7 @@ bool write_cpustate_to_list(ARMCPU *cpu, bool kvm_sync)
newval = read_raw_cp_reg(&cpu->env, ri);
if (kvm_sync) {
+#ifdef CONFIG_KVM
if (is_id_reg(ri)) {
/* Only sync if we can sync to KVM successfully. */
uint64_t oldval;
@@ -306,6 +307,7 @@ bool write_cpustate_to_list(ARMCPU *cpu, bool kvm_sync)
kvm_arm_set_one_reg(cpu, cpu->cpreg_indexes[i], &oldval);
} else {
+#endif
/*
* Only sync if the previous list->cpustate sync succeeded.
* Rather than tracking the success/failure state for every
@@ -324,7 +326,9 @@ bool write_cpustate_to_list(ARMCPU *cpu, bool kvm_sync)
}
write_raw_cp_reg(&cpu->env, ri, newval);
+#ifdef CONFIG_KVM
}
+#endif
}
cpu->cpreg_values[i] = newval;
}
diff --git a/target/arm/kvm_arm.h b/target/arm/kvm_arm.h
index 49e80878f4..a223967d4d 100644
--- a/target/arm/kvm_arm.h
+++ b/target/arm/kvm_arm.h
@@ -312,6 +312,10 @@ static inline void kvm_arm_set_cpu_features_from_host(ARMCPU *cpu)
static inline void kvm_arm_add_vcpu_properties(Object *obj) {}
+static inline bool kvm_arm_cpu_feature_supported(void) {
+ return false;
+}
+
static inline int kvm_arm_get_max_vm_ipa_size(MachineState *ms)
{
return -ENOENT;
--
2.27.0
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/kuhnchen18/src-qemu.git
git@gitee.com:kuhnchen18/src-qemu.git
kuhnchen18
src-qemu
src-qemu
master

搜索帮助