All new accounts created on Gitlab now require administrator approval. If you invite any collaborators, please let Flux staff know so they can approve the accounts.

Commit 7e85e8a3 authored by Charles Jacobsen's avatar Charles Jacobsen Committed by Vikram Narayanan

Host handles all exceptions/faults except page faults.

parent 02f52190
......@@ -2612,7 +2612,8 @@ static int vmx_handle_external_intr(struct lcd_arch *vcpu)
/**
* Processes hardware exceptions -- page faults, general protection
* exceptions, etc.
* exceptions, etc. For now, we have the host handle all except page
* faults.
*/
static int vmx_handle_hard_exception(struct lcd_arch *vcpu)
{
......@@ -2631,16 +2632,18 @@ static int vmx_handle_hard_exception(struct lcd_arch *vcpu)
vcpu->run_info.gv_fault_addr = __gva(vcpu->exit_qualification);
return LCD_ARCH_STATUS_PAGE_FAULT;
default:
printk(KERN_ERR "lcd vmx: unhandled hw exception:\n");
printk(KERN_ERR "lcd vmx: hw exception:\n");
printk(KERN_ERR " vector: %x, info: %x\n",
vector, vcpu->exit_intr_info);
printk(KERN_ERR " letting host handle it\n");
vmx_handle_external_intr(vcpu);
return -EIO;
}
}
/**
* Processes software / hardware exceptions and nmi's generated
* while lcd was running.
* while lcd was running. For now, the host handles all exceptions/nmi's.
*/
static int vmx_handle_exception_nmi(struct lcd_arch *vcpu)
{
......@@ -2656,10 +2659,12 @@ static int vmx_handle_exception_nmi(struct lcd_arch *vcpu)
/*
* NMI, div by zero, overflow, ...
*/
printk(KERN_ERR "lcd vmx: unhandled exception or nmi:\n");
printk(KERN_ERR "lcd vmx: exception or nmi:\n");
printk(KERN_ERR " interrupt info: %x\n",
vcpu->exit_intr_info);
return -EIO;
printk(KERN_ERR " letting host handle it\n");
return vmx_handle_external_intr(vcpu);
//return -EIO;
}
}
......
......@@ -5,6 +5,8 @@
* ran last in lcd_init.
*/
#include <linux/delay.h>
static int test01(void)
{
struct lcd *lcd;
......@@ -592,6 +594,9 @@ static int test10(void)
goto fail2;
}
LCD_MSG("test module sleeping for 100 ms.");
msleep(100);
/*
* Tear it down
*/
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment