Hello,

The following commit has introduced stability issues in my AArch64 TCL scripting environment and I'm wondering if others have experienced similar issues.

95603fae1 openocd: revert workarounds for 'expr' syntax change

With this update, while the TCL script runs faster due to the reduction in polling during math expressions, it does cause script execution instability.

For example, the following TCL scripted sequence previously worked, but now fails with the update.

// The target being stepped is an Armv8 core

1. step

2. reg x0

With the update, it appears in the TCL script the "reg x0" operation occurs before the poller has a chance to determine the CPU has halted from the 'step' command. OpenOCD then halts the script execution and returns with an error stating that it's unable to read register x0 because the CPU core isn't halted. As a workaround, adding a 'sleep' delay between the 'step' and 'reg x0' command resolves the issue, but it is not ideal.

With this update, it appears that in a TCL script, any command that causes a processor state change from 'running' to 'halted' followed by a command which requires the processor to be halted could fail if the poller hasn't updated processor state between the two commands.

I don't have the background details on this commit (95603fae1), but wanted to bring it to the attention of the development community.

Daniel Goehring



Reply via email to