diff options
Diffstat (limited to 'xen/include/asm-x86/debugger.h')
-rw-r--r-- | xen/include/asm-x86/debugger.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/xen/include/asm-x86/debugger.h b/xen/include/asm-x86/debugger.h index 1d377c5060..d44b2d5e62 100644 --- a/xen/include/asm-x86/debugger.h +++ b/xen/include/asm-x86/debugger.h @@ -55,7 +55,8 @@ static inline int debugger_trap_entry( break; case TRAP_gp_fault: - if ( ((regs->cs & 3) != 0) && ((regs->error_code & 3) == 2) && + if ( (VM86_MODE(regs) || !RING_0(regs)) && + ((regs->error_code & 3) == 2) && pdb_initialized && (pdb_ctx.system_call != 0) ) { unsigned long cr3 = read_cr3(); |