Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openanolis
cloud-kernel
提交
4926d445
cloud-kernel
项目概览
openanolis
/
cloud-kernel
1 年多 前同步成功
通知
161
Star
36
Fork
7
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
10
列表
看板
标记
里程碑
合并请求
2
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
cloud-kernel
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
10
Issue
10
列表
看板
标记
里程碑
合并请求
2
合并请求
2
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
4926d445
编写于
9月 18, 2012
作者:
M
Marc Zyngier
提交者:
Christoffer Dall
3月 06, 2013
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
ARM: KVM: abstract exception class decoding away
Signed-off-by:
N
Marc Zyngier
<
marc.zyngier@arm.com
>
上级
23b415d6
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
8 addition
and
3 deletion
+8
-3
arch/arm/include/asm/kvm_emulate.h
arch/arm/include/asm/kvm_emulate.h
+5
-0
arch/arm/kvm/arm.c
arch/arm/kvm/arm.c
+2
-2
arch/arm/kvm/mmu.c
arch/arm/kvm/mmu.c
+1
-1
未找到文件。
arch/arm/include/asm/kvm_emulate.h
浏览文件 @
4926d445
...
...
@@ -142,4 +142,9 @@ static inline bool kvm_vcpu_trap_il_is32bit(struct kvm_vcpu *vcpu)
return
kvm_vcpu_get_hsr
(
vcpu
)
&
HSR_IL
;
}
static
inline
u8
kvm_vcpu_trap_get_class
(
struct
kvm_vcpu
*
vcpu
)
{
return
kvm_vcpu_get_hsr
(
vcpu
)
>>
HSR_EC_SHIFT
;
}
#endif
/* __ARM_KVM_EMULATE_H__ */
arch/arm/kvm/arm.c
浏览文件 @
4926d445
...
...
@@ -559,7 +559,7 @@ static bool kvm_condition_valid(struct kvm_vcpu *vcpu)
* catch undefined instructions, and then we won't get past
* the arm_exit_handlers test anyway.
*/
BUG_ON
(
((
kvm_vcpu_get_hsr
(
vcpu
)
&
HSR_EC
)
>>
HSR_EC_SHIFT
)
==
0
);
BUG_ON
(
!
kvm_vcpu_trap_get_class
(
vcpu
)
);
/* Top two bits non-zero? Unconditional. */
if
(
kvm_vcpu_get_hsr
(
vcpu
)
>>
30
)
...
...
@@ -609,7 +609,7 @@ static int handle_exit(struct kvm_vcpu *vcpu, struct kvm_run *run,
case
ARM_EXCEPTION_DATA_ABORT
:
case
ARM_EXCEPTION_PREF_ABORT
:
case
ARM_EXCEPTION_HVC
:
hsr_ec
=
(
kvm_vcpu_get_hsr
(
vcpu
)
&
HSR_EC
)
>>
HSR_EC_SHIFT
;
hsr_ec
=
kvm_vcpu_trap_get_class
(
vcpu
)
;
if
(
hsr_ec
>=
ARRAY_SIZE
(
arm_exit_handlers
)
||
!
arm_exit_handlers
[
hsr_ec
])
{
...
...
arch/arm/kvm/mmu.c
浏览文件 @
4926d445
...
...
@@ -593,7 +593,7 @@ int kvm_handle_guest_abort(struct kvm_vcpu *vcpu, struct kvm_run *run)
gfn_t
gfn
;
int
ret
,
idx
;
hsr_ec
=
kvm_vcpu_
get_hsr
(
vcpu
)
>>
HSR_EC_SHIFT
;
hsr_ec
=
kvm_vcpu_
trap_get_class
(
vcpu
)
;
is_iabt
=
(
hsr_ec
==
HSR_EC_IABT
);
fault_ipa
=
kvm_vcpu_get_fault_ipa
(
vcpu
);
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录