Manage writes to cfc: ignore them for now.
authorRonald G. Minnich <rminnich@gmail.com>
Thu, 16 Jul 2015 17:54:58 +0000 (10:54 -0700)
committerBarret Rhoden <brho@cs.berkeley.edu>
Mon, 2 Nov 2015 23:24:25 +0000 (18:24 -0500)
Signed-off-by: Ronald G. Minnich <rminnich@gmail.com>
Signed-off-by: Barret Rhoden <brho@cs.berkeley.edu>
kern/arch/x86/vmm/intel/vmx.c

index 765209d..72647a8 100644 (file)
@@ -1407,6 +1407,10 @@ static int io(struct vmx_vcpu *vcpu, int *advance)
                        printk("Set cf8 ");
                        return configaddr(vcpu->regs.tf_rax);
                }
+               if (edx == 0xcf8) {
+                       printk("IGNORE Set cf8 ");
+                       return configaddr(vcpu->regs.tf_rax);
+               }
                printk("unhandled IO address dx @%p is 0x%x\n", ip8, edx);
                return SHUTDOWN_UNHANDLED_EXIT_REASON;
        }
@@ -1419,8 +1423,8 @@ static int io(struct vmx_vcpu *vcpu, int *advance)
                        return 0;
                }
                if ((edx&~3) == 0xcfc) {
-                       printk("configwrite8 ");
-                       return configwrite8(edx, vcpu->regs.tf_rax);
+                       printk("ignoring write to cfc ");
+                       return 0;
                }
                printk("unhandled IO address dx @%p is 0x%x\n", ip8, edx);
                return SHUTDOWN_UNHANDLED_EXIT_REASON;