KVM: disable writeback for 0x0f 0x01 instructions.
0x0f 0x01 instructions (ie lgdt, lidt, smsw, lmsw and invlpg) does not use writeback. This patch set no_wb=1 when emulating those instructions. This fixes a regression booting the FreeBSD kernel on AMD. Signed-off-by: Aurelien Jarno <aurelien@aurel32.net> Signed-off-by: Avi Kivity <avi@qumranet.com>
This commit is contained in:
parent
4c981b43d7
commit
d37c855719
1 changed files with 2 additions and 0 deletions
|
@ -1178,6 +1178,8 @@ x86_emulate_memop(struct x86_emulate_ctxt *ctxt, struct x86_emulate_ops *ops)
|
|||
twobyte_insn:
|
||||
switch (b) {
|
||||
case 0x01: /* lgdt, lidt, lmsw */
|
||||
/* Disable writeback. */
|
||||
no_wb = 1;
|
||||
switch (modrm_reg) {
|
||||
u16 size;
|
||||
unsigned long address;
|
||||
|
|
Loading…
Reference in a new issue