aboutsummaryrefslogtreecommitdiff
path: root/arch/mn10300/Kconfig.debug
diff options
context:
space:
mode:
authorDavid Howells2011-03-18 16:54:29 +0000
committerDavid Howells2011-03-18 16:54:29 +0000
commit9ee21723ccc30070f47c411826d4ed013cd050c2 (patch)
tree5f460e51e72ef93f4103c39032f1aec298a638db /arch/mn10300/Kconfig.debug
parentddb7d1e975d224885397c002512ded987be3c3bc (diff)
MN10300: gdbstub: Restrict single-stepping to non-preemptable non-SMP configs
Restrict single-stepping through the kernel using gdbstub to non-preemptable non-SMP configs as gdbstub has to do software single-stepping by means of temporary breakpoints. Hardware single-stepping is unavailable as Panasonic have not sufficiently documented the interface to it. Software single-stepping through preemptable or SMP kernels runs into problems as it makes it much more likely that the wrong thread will hit the temporary breakpoints. It seems impractical to work around the problem for the most part. It could be possible to make a UP preemptable kernel switch temporary breakpoints in and out in switch_to(). Signed-off-by: David Howells <dhowells@redhat.com>
Diffstat (limited to 'arch/mn10300/Kconfig.debug')
-rw-r--r--arch/mn10300/Kconfig.debug8
1 files changed, 8 insertions, 0 deletions
diff --git a/arch/mn10300/Kconfig.debug b/arch/mn10300/Kconfig.debug
index ce83c74b3fd7..a1b8620f65ae 100644
--- a/arch/mn10300/Kconfig.debug
+++ b/arch/mn10300/Kconfig.debug
@@ -54,6 +54,14 @@ config GDBSTUB_IMMEDIATE
possible, leaving the program counter at the beginning of
start_kernel() in init/main.c.
+config GDBSTUB_ALLOW_SINGLE_STEP
+ bool "Allow software single-stepping in GDB stub"
+ depends on GDBSTUB && !SMP && !PREEMPT
+ help
+ Allow GDB stub to perform software single-stepping through the
+ kernel. This doesn't work very well on SMP or preemptible kernels as
+ it uses temporary breakpoints to emulate single-stepping.
+
config GDB_CONSOLE
bool "Console output to GDB"
depends on GDBSTUB