cobalt: Fix handling of invalid thread affinities during hardening
The I-pipe implementation was lucky in its approach to not wake up the
RT thread in case the non-RT part migrated to an unsupported CPU. For
unclear reasons, the scheduled cancellation made it to the thread and
avoided any lockup. On dovetail, this fails.
So switch both implemenations to the safer pattern of actually
completing the migration, using the previous affinity of the thread. It
will still be canceled right after that, now also over dovetail.
As cobalt_affinity_ok's return value becomes irrelevant, refactor this
function to cobalt_adjust_affinity without and return code.
Signed-off-by:
Jan Kiszka <jan.kiszka@siemens.com>
Please register or sign in to comment