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
@ -1178,6 +1178,8 @@ pop_instruction:
|
|||||||
twobyte_insn:
|
twobyte_insn:
|
||||||
switch (b) {
|
switch (b) {
|
||||||
case 0x01: /* lgdt, lidt, lmsw */
|
case 0x01: /* lgdt, lidt, lmsw */
|
||||||
|
/* Disable writeback. */
|
||||||
|
no_wb = 1;
|
||||||
switch (modrm_reg) {
|
switch (modrm_reg) {
|
||||||
u16 size;
|
u16 size;
|
||||||
unsigned long address;
|
unsigned long address;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user