Indan Zupancic
Indan Zupancic
ksCurTime may be read cross-core. ksConsumed is never accessed via `NODE_STATE_ON_CORE`. If it was we had to check whether both reads had to be atomic in regard to each other....
> There's probably a different issue with these code paths anyway. The ksCurTime value is supposed to be a cache of getCurrentTime(). But for remote cores this can be very...
I could add a test that checks for how synchronous periodic tasks are with the system clock, but then TIMER_OVERHEAD_TICKS needs to be set correctly for all tested platforms.
Riscv is okay: "The real-time clocks of all hardware threads in a single user application should be synchronized to within one tick of the real-time clock." x86 okay if not...
> I think it would be better for the updateTimestamp() to be moved outside of the lock for all kernel entries instead of just for IRQs. Thoughts? I tried that,...
@kent-mcleod I updated #847 to always call `updateTimestamp()` first. @axel-h I disagree that this is an enhancement. Considering this fixes time accounting and that it prevents low-priority tasks from delaying...
I do not know what the policy is for `CHANGES`. It's only a bugfix on SMP, which is not verified yet. I expect a lot more bugfixes will pop-up if...
> It's likely that for unicore we need to keep updateTimestamp() in the same place and only move it for SMP. That seems unlikely to me, at least in the...
> Ideally this would be outside the lock too. I like the idea of lockless node local scheduling. > So if there's a higher priority thread running when your thread...
They are generated by tools/bitfield_gen.py from structures.bf files, e.g. include/arch/arm/arch/64/mode/object/structures.bf. Search for "_gen.h" in CMakeLists.txt for more details.