Fixed the algo of the engine : either we unlist the descriptors with delta_rotation = 0 at the beginning of the list, either we decrement the delta_rotation field of the head of the list. I was doing both !
Moreover, there was a bug for cyclic timers when there are relinked after expiration : cut&paste problem for the head field of the link was set to the bad head of list (spoke instead of new_spoke pointer).
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Fixed the algo of the engine : either we unlist the descriptors with delta_rotation = 0 at the beginning of the list, either we decrement the delta_rotation field of the head of the list. I was doing both !
Moreover, there was a bug for cyclic timers when there are relinked after expiration : cut&paste problem for the head field of the link was set to the bad head of list (spoke instead of new_spoke pointer).