Commit Graph

781 Commits

Author SHA1 Message Date
675c4f9ee8 Store the clock offset table inside the trace
The ovnisync tool now generates it by default inside ovni directory,
and the emulator recognizes it by default if exists.
2022-09-29 14:28:47 +02:00
834b33af33 Use SPDX license identifiers 2022-09-29 14:16:47 +02:00
2feccc7ba0 Always enable RT tests if possible 2022-09-29 12:41:59 +02:00
d1cff39359 Don't print error details when IPO fails 2022-09-29 12:37:01 +02:00
41739c8927 Link with -lrt with ancient glibc 2022-09-29 12:35:25 +02:00
273d4bcc80 Speed up several-tasks test 2022-09-29 12:34:45 +02:00
fcba4ddc87 Fix sched-add race condition
Wait until all tasks have set the handle and then unblock them all.
2022-09-29 12:32:56 +02:00
148598ec8e Use non-null gradient mode for task id view 2022-09-27 17:22:06 +02:00
2e35e29256 Use random drawing mode for all configs 2022-09-27 16:06:00 +02:00
7f3608d932 Don't enforce the subsystem state if not in use
Fixes the Nanos6 test with level set to 1.
2022-09-27 15:48:35 +02:00
323933448a Test Nanos6 with multiple instrumentation levels 2022-09-27 15:43:04 +02:00
598aea7dc9 Fix clock offset for looms with the same host
The offset is applied to all looms matching the host in the form
"loom.${host}.${suffix}", where the suffix is ignored.
2022-09-27 11:24:52 +02:00
121030537d Store the hostname until the first dot
The loom name "loom.xyz.123" will produce the hostname "xyz", so Nanos6 programs
can use the ovnisync tool too.

Also, sort the loom array directly, so we avoid potential problems by sorting
the loom and the hostnames individually (when there are repeated entries).
2022-09-22 11:56:48 +02:00
7751099d60 Print when the clock offset is being loaded 2022-09-22 11:55:32 +02:00
c82b95ff07 Fix emu tests for taskfor and task body events 2022-09-21 17:31:28 +02:00
b44c245405 Use 6t events for subsystem transition
No longer mix task state transitions (6T) with subsystem changes.
2022-09-21 17:30:23 +02:00
394910daa7 Always fetch the repositories again 2022-09-21 13:37:23 +02:00
12625a3750 Always use the mestral runner 2022-09-21 13:36:36 +02:00
baff1c050b Add preliminar support for taskfor
The emulator cannot handle tasks that are executed multiple times and
concurrently. The task for executes a single task (with unique id) multiple
times by using different arguments. The task model needs to be extended to
support the taskfor clause properly. In the meanwhile, we simple set the
subsystem to be running a taskfor.
2022-09-21 13:30:22 +02:00
cd2e949613 Fix nested-tasks emu test 2022-09-21 13:17:38 +02:00
1a67fa40d4 Add taskfor test 2022-09-21 13:16:53 +02:00
0fea805b44 Clarify "Task: Running body" subsystem state 2022-09-21 13:15:55 +02:00
8cab61bc62 Always emit task body when running a task
The emulator now enforces that the subsystem state is task body when a task
begins, either a new task or a nested one.
2022-09-21 13:02:24 +02:00
2db1a8a841 Use edie() for emu_task.c too 2022-09-21 12:59:31 +02:00
591fe17609 Avoid confusing colors for "Unlabeled0" labels 2022-09-20 14:43:20 +02:00
a94a56a4ba Update Nanos6 events for tests 2022-09-20 10:30:36 +02:00
24cb5a37c2 Remove fake subsystem test.
It is now covered by the runtime tests.
2022-09-20 10:29:36 +02:00
957cdaa81e Fix processReadyTask event value in doc 2022-09-20 10:27:49 +02:00
7962b835f4 Add missing doc subsystem items for Nanos6 2022-09-14 13:21:17 +02:00
04edd9be2e Rework blocking wait for subsystem 2022-09-14 13:21:06 +02:00
b5e70b90a7 Reduce tasks in sched-add tests
Also remove unused printf and follow style.
2022-09-14 13:20:15 +02:00
09e11b28a4 Add nanos6 as library and sched-add test 2022-09-13 15:36:55 +02:00
f1c8c3452d Organize .cfg files into directories 2022-09-13 14:58:50 +02:00
f990cd668f Switch to edie() for errors 2022-09-13 14:22:44 +02:00
999862e530 Enable CI runtime tests for Nanos6
These require a runner with nix available.
2022-09-13 12:15:36 +02:00
3d39b8cc54 Update task create emulated events 2022-09-12 16:52:27 +02:00
ac0989bf1d Update README 2022-09-12 16:16:11 +02:00
4f1125818c Add ovni level config to nanos6.toml 2022-09-12 16:16:11 +02:00
81e5f19267 Update Nanos6 events 2022-09-12 16:16:11 +02:00
c04b4587b6 Remove old category 2022-09-12 16:16:11 +02:00
ae458824b3 Check unexpected values and use edie() 2022-09-12 16:16:11 +02:00
81a391fb4b Reorder subsystem states for better colors 2022-09-12 16:16:11 +02:00
1ebdf81516 Move task create events to C category
The CPU idle/active events are no longer needed.
2022-09-12 16:16:11 +02:00
7e8ec9ebc7 Reduce task duration 2022-09-12 16:16:11 +02:00
cc1f5d769f Add Nanos6 rt test with several tasks 2022-09-12 16:16:11 +02:00
008ba5a8ef Add processing ready tasks support 2022-09-12 16:16:11 +02:00
a1378bbab5 Allow threads to die from cooling state 2022-09-12 16:16:11 +02:00
65d8d985b7 Print emulator state on Nanos6 check_affinity 2022-09-12 16:16:11 +02:00
6329c8c982 Add support for Nanos6 signal event 2022-09-12 16:16:11 +02:00
8e690f0e44 Add Nanos6 support for memory allocation 2022-09-12 16:16:10 +02:00