-
Concurrent timer start vs start, or start vs stop operations may end up confusing the logic, like: - a periodic timer being reinserted into the dispatch queue while disabled. - dirty reads of inconsistent ( date, interval, handler ) triplets by the dispatch loop, as the timer properties are being updated concurrently. Fix this by moving all updates to the timer properties under the protection of the dispatch lock (svlock), likewise for loads. Issue reported by Ronny Meeus, with a preliminary fix: https://xenomai.org/pipermail/xenomai/2020-December/043907.html Signed-off-by: Philippe Gerum <rpm@xenomai.org> Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
1de59c7c