mirror of
https://github.com/xen-project/xen.git
synced 2026-10-30 03:00:05 +01:00
svm: decode-assists feature must depend on nextrip feature.
...since the decode-assist fast paths assume nextrip vmcb field is valid. Signed-off-by: Keir Fraser <keir@xen.org>
This commit is contained in:
1 parent
8dea08ed8b
commit
88f1c41bd8
1 file changed
+4
-1
@@ -995,6 +995,10 @@ struct hvm_function_table * __init start_svm(void)
|
||||
|
||||
printk("SVM: Supported advanced features:\n");
|
||||
|
||||
/* DecodeAssists fast paths assume nextrip is valid for fast rIP update. */
|
||||
if ( !cpu_has_svm_nrips )
|
||||
clear_bit(SVM_FEATURE_DECODEASSISTS, &svm_feature_flags);
|
||||
|
||||
#define P(p,s) if ( p ) { printk(" - %s\n", s); printed = 1; }
|
||||
P(cpu_has_svm_npt, "Nested Page Tables (NPT)");
|
||||
P(cpu_has_svm_lbrv, "Last Branch Record (LBR) Virtualisation");
|
||||
@@ -1142,7 +1146,6 @@ static void svm_vmexit_do_cr_access(
|
||||
|
||||
rc = dir ? hvm_mov_to_cr(cr, gp) : hvm_mov_from_cr(cr, gp);
|
||||
|
||||
ASSERT(cpu_has_svm_nrips);
|
||||
if ( rc == X86EMUL_OKAY )
|
||||
__update_guest_eip(regs, vmcb->nextrip - vmcb->rip);
|
||||
}
|
||||
|
||||