We've seen a few cases where running ods-signerd -d -v... -1 did not terminate in a reasonable time (compared to other/earlier runs) and where CPU occupied was fairly consistently 100% – which makes it seem like an infinite loop.
The problem was resolved by removing /var/opendnssec/tmp/* files, and running the command once more. At that time, the CPU consumption jumped up and down, as would be expected from a process that interacts with an external component such as an HSM.
Unfortunately, this occurred on live signers that were the target of a (time-constrained) migration procedure, so we are not able to reliable reproduce this problem. We do think it is useful to document the workaround, which is hereby done.