ovni/src
Rodrigo Arias 4b4f1bd218 Don't modify nOS-V subsystem state on task pause
In nOS-V, when a task was paused via the VTp event, two things were
happening: 1) the task state was set to pause and 2) the subsystem state
"Task: Running" was being popped.

This causes a problem when a task calls nosv_submit() in blocking mode,
as it will call nosv_pause() which will emit a VTp event from a
subsystem different than "Task: Running".

To solve this conflict, we handle the subsystems state and the task
state separately with the VTp and VTr events. The subsystem state "Task:
Running" no longer is connected to the state of the task and only shows
if we entered the body of the task or not. It has now been renamed to
"Task: In body".

The new state "Task: In body" represents that the task body has begun
the execution and is still in the stack, but the task may be paused. The
subsystem is not changed by the VTp (pause) or VTr (resume) events.

Fixes: https://pm.bsc.es/gitlab/rarias/ovni/-/issues/128
2023-10-23 11:26:17 +02:00
..
emu Don't modify nOS-V subsystem state on task pause 2023-10-23 11:26:17 +02:00
include Constraint _GNU_SOURCE in compat.c only 2023-03-24 12:08:45 +00:00
rt Add OVNI_TRACEDIR envar to change trace directory 2023-10-23 07:49:28 +00:00
CMakeLists.txt Move ovni.pc.in into src/ 2023-07-05 13:13:53 +02:00
common.c Add OVNI_TRACEDIR envar to change trace directory 2023-10-23 07:49:28 +00:00
common.h Add OVNI_TRACEDIR envar to change trace directory 2023-10-23 07:49:28 +00:00
compat.c Fix compat.c headers 2023-03-24 12:08:45 +00:00
compat.h Constraint _GNU_SOURCE in compat.c only 2023-03-24 12:08:45 +00:00
config.h.in Copy Paraver configs into the trace directory 2022-11-09 16:09:33 +01:00
ovni.pc.in Move ovni.pc.in into src/ 2023-07-05 13:13:53 +02:00
parson.c Set continuation indent to 2 tabs 2022-09-30 10:25:09 +02:00
parson.h Move sources to src 2022-09-29 16:52:30 +02:00