
From: Prasanna S Panchamukhi <prasanna@in.ibm.com>

This patch fixes the problem reported by Stas Sergeev, that kprobes steals
the virtual-8086 exceptions.  This fix modifies kprobe_handler() to return
0 when in virtual-8086 mode.

Signed-off-by: Andrew Morton <akpm@osdl.org>
---

 25-akpm/arch/i386/kernel/kprobes.c |    5 +++++
 1 files changed, 5 insertions(+)

diff -puN arch/i386/kernel/kprobes.c~kprobes-vm86-interrupt-miss arch/i386/kernel/kprobes.c
--- 25/arch/i386/kernel/kprobes.c~kprobes-vm86-interrupt-miss	Wed Nov 17 13:48:57 2004
+++ 25-akpm/arch/i386/kernel/kprobes.c	Wed Nov 17 13:49:52 2004
@@ -117,6 +117,11 @@ static inline int kprobe_handler(struct 
 	p = get_kprobe(addr);
 	if (!p) {
 		unlock_kprobes();
+		if (regs->eflags & VM_MASK) {
+			/* We are in virtual-8086 mode. Return 0 */
+			goto no_kprobe;
+		}
+
 		if (*addr != BREAKPOINT_INSTRUCTION) {
 			/*
 			 * The breakpoint instruction was removed right
_
