ia64/xen-unstable

changeset 18611:583e45983aaa

vmx:update DR6 on TRAP_debug VM exits.

Signed-off-by: Kouya Shimura <kouya@jp.fujitsu.com>
author Keir Fraser <keir.fraser@citrix.com>
date Fri Oct 10 10:06:49 2008 +0100 (2008-10-10)
parents c89fd1e9c49c
children cafbd83e2258
files xen/arch/x86/hvm/vmx/vmx.c
line diff
     1.1 --- a/xen/arch/x86/hvm/vmx/vmx.c	Fri Oct 10 10:04:58 2008 +0100
     1.2 +++ b/xen/arch/x86/hvm/vmx/vmx.c	Fri Oct 10 10:06:49 2008 +0100
     1.3 @@ -2109,6 +2109,13 @@ asmlinkage void vmx_vmexit_handler(struc
     1.4          switch ( vector )
     1.5          {
     1.6          case TRAP_debug:
     1.7 +            /*
     1.8 +             * Updates DR6 where debugger can peek (See 3B 23.2.1,
     1.9 +             * Table 23-1, "Exit Qualification for Debug Exceptions").
    1.10 +             */
    1.11 +            exit_qualification = __vmread(EXIT_QUALIFICATION);
    1.12 +            write_debugreg(6, exit_qualification | 0xffff0ff0);
    1.13 +            /* fall through */
    1.14          case TRAP_int3:
    1.15              if ( !v->domain->debugger_attached )
    1.16                  goto exit_and_crash;