diff options
author | Antonio Borneo <borneo.antonio@gmail.com> | 2020-10-15 14:45:27 +0200 |
---|---|---|
committer | Antonio Borneo <borneo.antonio@gmail.com> | 2020-11-04 17:37:59 +0000 |
commit | e2e8a5f467e8e35618ce4fbf16b8da4e682d8258 (patch) | |
tree | 5b200e7d3b599606143b36149f64182775759565 /doc | |
parent | 360b2c27012f3f787382bee9ce0b4e4707b22dc3 (diff) | |
download | riscv-openocd-e2e8a5f467e8e35618ce4fbf16b8da4e682d8258.zip riscv-openocd-e2e8a5f467e8e35618ce4fbf16b8da4e682d8258.tar.gz riscv-openocd-e2e8a5f467e8e35618ce4fbf16b8da4e682d8258.tar.bz2 |
gdb_server: allow multiple GDB connections to selected targets
The default way of working is to have a single GDB attached to one
target, so OpenOCD accepts only one connection to the GDB port of
each targets and rejects any further connection.
There are some barely safe use cases in which it could get useful
having a second GDB connection to the same target.
One such use case is while using GDB as a 'non-intrusive memory
inspector', as explained in the OpenOCD documentation.
One GDB can be left running an infinite loop to dump some memory
area, or even analysing the content, while keeping a second GDB
ready for user interaction or spot memory check.
Add a target configure option to specify the maximum number of GDB
connections allowed for that target, keeping the default to 1.
Change-Id: I4985a602e61588df0b527d2f2aa5b955c93e125e
Signed-off-by: Antonio Borneo <borneo.antonio@gmail.com>
Reviewed-on: http://openocd.zylin.com/5865
Tested-by: jenkins
Reviewed-by: Tarek BOCHKATI <tarek.bouchkati@gmail.com>
Diffstat (limited to 'doc')
-rw-r--r-- | doc/openocd.texi | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/doc/openocd.texi b/doc/openocd.texi index ca10f8c..e6a1467 100644 --- a/doc/openocd.texi +++ b/doc/openocd.texi @@ -4694,6 +4694,11 @@ possible values of the parameter @var{number}, which are not only numeric values Use this option to override, for this target only, the global parameter set with command @command{gdb_port}. @xref{gdb_port,,command gdb_port}. + +@item @code{-gdb-max-connections} @var{number} -- EXPERIMENTAL: set the maximum +number of GDB connections that are allowed for the target. Default is 1. +A negative value for @var{number} means unlimited connections. +See @xref{gdbmeminspect,,Using GDB as a non-intrusive memory inspector}. @end itemize @end deffn @@ -10606,7 +10611,13 @@ of a running target. Do not use GDB commands @command{continue}, and GDB would require stopping the target to get the prompt back. Do not use this mode under an IDE like Eclipse as it caches values of -previously shown varibles. +previously shown variables. + +It's also possible to connect more than one GDB to the same target by the +target's configuration option @code{-gdb-max-connections}. This allows, for +example, one GDB to run a script that continuously polls a set of variables +while other GDB can be used interactively. Be extremely careful in this case, +because the two GDB can easily get out-of-sync. @section RTOS Support @cindex RTOS Support |