aboutsummaryrefslogtreecommitdiffstats
path: root/xen/include/asm-x86/debugger.h
diff options
context:
space:
mode:
authorkaf24@scramble.cl.cam.ac.uk <kaf24@scramble.cl.cam.ac.uk>2004-11-27 15:03:05 +0000
committerkaf24@scramble.cl.cam.ac.uk <kaf24@scramble.cl.cam.ac.uk>2004-11-27 15:03:05 +0000
commite5e283215b2299c860cba33f20a42a27a6a72430 (patch)
tree4bf99ef7038eb03c7a50ce2c3dd462cdcd37b213 /xen/include/asm-x86/debugger.h
parent3962da061ee93a783f88e84f9bac3084b448c2b8 (diff)
downloadxen-e5e283215b2299c860cba33f20a42a27a6a72430.tar.gz
xen-e5e283215b2299c860cba33f20a42a27a6a72430.tar.bz2
xen-e5e283215b2299c860cba33f20a42a27a6a72430.zip
bitkeeper revision 1.1159.187.22 (41a89729VHxMK8Tp4qcLrOPCoZrdog)
First cut for VM86 support, based on Stephan Diestelhorst's patches. It doesn't actually work yet -- it's possible that e.g., signal delivery is broken.
Diffstat (limited to 'xen/include/asm-x86/debugger.h')
-rw-r--r--xen/include/asm-x86/debugger.h3
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();