Commit Graph

771 Commits

Author SHA1 Message Date
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
306a64999a Add edie() and eerr() functions
These emit a detailed message of the state of the emulator on failure.
2022-09-12 16:16:10 +02:00
666075e8cd Disable Nanos6 subsystem test for now 2022-09-12 16:16:10 +02:00
576936ef01 Add CPU idle and active events 2022-09-12 16:16:10 +02:00
982bc39490 Move thread type events to another channel 2022-09-12 16:16:10 +02:00
dfc4ba2224 Split views in one file 2022-09-12 16:16:10 +02:00
903244d22b Update documentation 2022-09-12 16:16:10 +02:00
ac1ae8e69d Use one event per blocking type in Nanos6 2022-09-12 16:16:10 +02:00
5c45323354 Sort threads by TID 2022-09-12 16:16:10 +02:00
3c385f9f3f Raise cmake minimum version to 3.20
Required by cmake_path()
2022-09-12 16:16:10 +02:00
2679655b2a Add more documentation 2022-09-12 16:16:10 +02:00