Hi all, just looked into the hrescnt issue again, specifically the corner case of a shadow thread switching from real-time policy to SCHED_OTHER.
Looks like we don't support this at all ATM: do_setsched_event ignores events that enabled SCHED_OTHER, and the XNOTHER flag is only set on xnshadow_map, not updated anywhere else. Fixing this is not straightforward as that flag resides in a state variable that is owned by the thread (ie. updated non-atomically) while do_setsched_event can also be called over different contexts. Or am I missing something? In the light of this, I would vote for reverting f9bfab3457 ("only update rescnt for XNOTHER threads") as it only adds conditional branches to the hot paths without solving the issue. Jan
signature.asc
Description: OpenPGP digital signature
_______________________________________________ Xenomai-core mailing list Xenomai-core@gna.org https://mail.gna.org/listinfo/xenomai-core