bdi
GDB
for GNU Debugger, BDI2000 (ARM11 / Cortex)
User Manual
54
© Copyright 1997-2014 by ABATRON AG Switzerland
V 1.21
Multi-Core Restart via GDB continue:
Then core specific parameter CTI allows to define a group of cores that should be restarted when
GDB sends the "continue" command to the BDI. This has the same effect as the Telnet "cont" com-
mand. Via the cgroup option you define what the BDI does in response to the GDB continue com-
mand:
• If there is no CGROUP defined then the core is restarted as usual.
• If the CGROUP core mask defines only the actual core then this core is prepared for restart
but the final step to actually restart is made pending. To actually restart it a "continue" com-
mand from the master GDB session (see next) or the Telnet "cont" command is necessary.
• If the CGROUP core mask includes other cores beside the actual one, then all cores in the
mask are prepared for restart (if not already done) and finally the whole core group is restarted
at the same time and CTI and CTM is setup so that all cores in this group halt when one of it
halts.
This supports two different debug scenarios where the first one is actually a special case of the sec-
ond one:
• Debug only one core via GDB but make sure that always all cores are either halted or running.
For this only one CGROUP for the debugged core is necessary. The core mask defines all
the cores.
• Debug multiple cores (not necessary all cores) with different GDB sessions. Here one core
will be let's say the master core with the attached master GDB session. Always continue all
other GDB session (cores) before entering the continue command in the master GDB ses-
sion. For the master core define the CGROUP mask with all cores. For other cores set only
the bit in the core mask that represents the core itself.