1
linux/arch
Frederic Weisbecker 0c4519e825 x86: Set resume bit before returning from breakpoint exception
Instruction breakpoints trigger before the instruction executes,
and returning back from the breakpoint handler brings us again
to the instruction that breakpointed. This naturally bring to
a breakpoint recursion.

To solve this, x86 has the Resume Bit trick. When the cpu flags
have the RF flag set, the next instruction won't trigger any
instruction breakpoint, and once this instruction is executed,
RF is cleared back.

This let's us jump back to the instruction that triggered the
breakpoint without recursion.

Use this when an instruction breakpoint triggers.

Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Will Deacon <will.deacon@arm.com>
Cc: Prasad <prasad@linux.vnet.ibm.com>
Cc: Mahesh Salgaonkar <mahesh@linux.vnet.ibm.com>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Jason Wessel <jason.wessel@windriver.com>
2010-06-24 23:35:15 +02:00
..
alpha arch: Implement local64_t 2010-06-09 11:12:36 +02:00
arm Merge commit 'v2.6.35-rc3' into perf/core 2010-06-18 10:53:19 +02:00
avr32 arch: Implement local64_t 2010-06-09 11:12:36 +02:00
blackfin arch: Implement local64_t 2010-06-09 11:12:36 +02:00
cris Merge commit 'v2.6.35-rc3' into perf/core 2010-06-18 10:53:19 +02:00
frv Merge commit 'v2.6.35-rc3' into perf/core 2010-06-18 10:53:19 +02:00
h8300 Merge commit 'v2.6.35-rc3' into perf/core 2010-06-18 10:53:19 +02:00
ia64 Merge commit 'v2.6.35-rc3' into perf/core 2010-06-18 10:53:19 +02:00
m32r Merge commit 'v2.6.35-rc3' into perf/core 2010-06-18 10:53:19 +02:00
m68k arch: Implement local64_t 2010-06-09 11:12:36 +02:00
m68knommu Merge branch 'for-35' of git://repo.or.cz/linux-kbuild 2010-06-01 08:55:52 -07:00
microblaze Merge commit 'v2.6.35-rc3' into perf/core 2010-06-18 10:53:19 +02:00
mips Merge commit 'v2.6.35-rc3' into perf/core 2010-06-18 10:53:19 +02:00
mn10300 Merge commit 'v2.6.35-rc3' into perf/core 2010-06-18 10:53:19 +02:00
parisc Merge commit 'v2.6.35-rc3' into perf/core 2010-06-18 10:53:19 +02:00
powerpc Merge commit 'v2.6.35-rc3' into perf/core 2010-06-18 10:53:19 +02:00
s390 Merge commit 'v2.6.35-rc3' into perf/core 2010-06-18 10:53:19 +02:00
score arch: Implement local64_t 2010-06-09 11:12:36 +02:00
sh Merge commit 'v2.6.35-rc3' into perf/core 2010-06-18 10:53:19 +02:00
sparc Merge commit 'v2.6.35-rc3' into perf/core 2010-06-18 10:53:19 +02:00
um arch/um: fix kunmap_atomic() call in skas/uaccess.c 2010-06-04 15:21:45 -07:00
x86 x86: Set resume bit before returning from breakpoint exception 2010-06-24 23:35:15 +02:00
xtensa Merge commit 'v2.6.35-rc3' into perf/core 2010-06-18 10:53:19 +02:00
.gitignore
Kconfig hw-breakpoints: Separate constraint space for data and instruction breakpoints 2010-05-01 04:32:11 +02:00