linux/arch
Frederic Weisbecker 6c0aca288e x86: Ignore trap bits on single step exceptions
When a single step exception fires, the trap bits, used to
signal hardware breakpoints, are in a random state.

These trap bits might be set if another exception will follow,
like a breakpoint in the next instruction, or a watchpoint in the
previous one. Or there can be any junk there.

So if we handle these trap bits during the single step exception,
we are going to handle an exception twice, or we are going to
handle junk.

Just ignore them in this case.

This fixes https://bugzilla.kernel.org/show_bug.cgi?id=21332

Reported-by: Michael Stefaniuc <mstefani@redhat.com>
Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Rafael J. Wysocki <rjw@sisk.pl>
Cc: Maciej Rutecki <maciej.rutecki@gmail.com>
Cc: Alexandre Julliard <julliard@winehq.org>
Cc: Jason Wessel <jason.wessel@windriver.com>
Cc: All since 2.6.33.x <stable@kernel.org>
2010-11-12 14:51:01 +01:00
..
alpha alpha: remove dma64_addr_t usage 2010-10-27 18:03:17 -07:00
arm Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx 2010-10-27 19:04:36 -07:00
avr32 ptrace: cleanup arch_ptrace() on avr32 2010-10-27 18:03:10 -07:00
blackfin ptrace: cleanup arch_ptrace() and friends on Blackfin 2010-10-27 18:03:10 -07:00
cris ptrace: cleanup arch_ptrace() on cris 2010-10-27 18:03:10 -07:00
frv ptrace: cleanup arch_ptrace() on frv 2010-10-27 18:03:10 -07:00
h8300 ptrace: cleanup arch_ptrace() on h8300 2010-10-27 18:03:11 -07:00
ia64 taskstats: use real microsecond granularity for CPU times 2010-10-27 18:03:17 -07:00
m32r ptrace: cleanup arch_ptrace() on m32r 2010-10-27 18:03:11 -07:00
m68k ptrace: cleanup arch_ptrace() on m68k 2010-10-27 18:03:11 -07:00
m68knommu ptrace: cleanup arch_ptrace() on m68knommu 2010-10-27 18:03:11 -07:00
microblaze ptrace: cleanup arch_ptrace() on microblaze 2010-10-27 18:03:11 -07:00
mips mips: remove dma64_addr_t usage 2010-10-27 18:03:17 -07:00
mn10300 Merge git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-2.6-mn10300 2010-10-27 18:53:26 -07:00
parisc ptrace: cleanup arch_ptrace() on parisc 2010-10-27 18:03:11 -07:00
powerpc Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx 2010-10-27 19:04:36 -07:00
s390 taskstats: use real microsecond granularity for CPU times 2010-10-27 18:03:17 -07:00
score ptrace: cleanup arch_ptrace() on score 2010-10-27 18:03:12 -07:00
sh ptrace: cleanup arch_ptrace() on sh 2010-10-27 18:03:12 -07:00
sparc jump_label: Fix unaligned traps on sparc. 2010-10-29 12:57:06 -04:00
tile Remove duplicate includes from many files 2010-10-27 18:03:18 -07:00
um ptrace: cleanup arch_ptrace() on um 2010-10-27 18:03:12 -07:00
x86 x86: Ignore trap bits on single step exceptions 2010-11-12 14:51:01 +01:00
xtensa ptrace: cleanup arch_ptrace() on xtensa 2010-10-27 18:03:12 -07:00
.gitignore
Kconfig jump label: Add work around to i386 gcc asm goto bug 2010-10-29 14:45:29 -04:00