Commit Graph

57 Commits

Author SHA1 Message Date
Michael Mueller
dd0c8b10dc Added support for habitats. 2025-12-08 18:38:02 +01:00
Michael Mueller
e3fff92481 base-tukija: Increased upper page limit to account for pages needed for CIP and TIP. 2025-10-17 16:48:56 +02:00
Michael Mueller
8845be160a base-tukija: Map TIP if a page-fault occurs while accessing it. 2025-10-17 16:48:06 +02:00
Michael Mueller
0da523ce73 base-tukija: Had to increase quota for Platform PD after size increase of CIP due to reduction in false-sharing. 2025-09-18 16:19:47 +02:00
Michael Mueller
98b545d136 base-tukija: Print name of PD for which create_ec failed. 2025-09-18 16:18:32 +02:00
Michael Mueller
12a844ad90 Removed false-sharing on cacheline holding a cell's yield flag. 2025-09-18 15:53:21 +02:00
Michael Mueller
c3e8e0d89c ealanos: Implemented support for static cells aka bricks. 2025-06-17 19:26:10 +02:00
Michael Mueller
6c7283b711 Reduced default quantum for NOVA threads to improve responsiveness of networking stack. 2025-06-03 15:23:52 +02:00
Michael Mueller
c296076d7d Removed gasm-specific mnemonic suffixes to make code compilable by clang. 2025-06-03 15:23:14 +02:00
Michael Mueller
dccd1ddfc3 Added backtrace to C++ expection handler and memory related fault handlers. 2025-06-03 15:22:09 +02:00
Michael Mueller
225396c805 base-tukija: Fixed compiler errors/warnings. 2025-05-11 22:03:35 +02:00
Michael Mueller
dc51de546b tukija: Fixed mapping of TIP and added some more querying functions. 2025-05-05 18:12:20 +02:00
Michael Mueller
d2cd009a00 Moved to clangd as language server. 2025-05-05 18:09:19 +02:00
Michael Mueller
3c4a1c4d8d base-tukija: Fixed code for querying memory ranges of a NUMA domain. 2025-04-23 16:05:38 +02:00
Michael Mueller
7b3400b261 Adapt TIP address to changed mapping in Tukija. 2025-04-22 15:36:34 +02:00
Michael Mueller
f279097716 ealanos: Properly cleanup habitat after cells terminated. Also, limit quota for cell creation by quota available to the habitat. 2025-04-22 15:36:02 +02:00
Michael Mueller
baa37c03d4 More verbose IPC error handling. 2025-04-17 15:46:05 +02:00
Michael Mueller
d83c382a6c More verbose error handling for session routing. 2025-04-17 15:45:47 +02:00
Michael Mueller
7736c41cc3 Fixed habitat service reporting wrong pre-partitions to Tukija. 2025-04-17 15:45:21 +02:00
Michael Mueller
766ea4679e Increased amount of available CAPs for init. 2025-04-17 15:44:18 +02:00
Michael Mueller
45079145aa Destroy cell object when PD is destroyed. 2025-04-17 15:43:38 +02:00
Michael Mueller
cbdbdf16ba Increased core's stack size. 2025-04-17 15:43:11 +02:00
Michael Mueller
920bd07488 Added spinlock from NOVA for locking CIP. 2025-04-17 15:42:51 +02:00
Michael Mueller
ebfd0e9f65 Fixed usage of wrong variant of popcount. 2025-04-17 15:42:29 +02:00
Michael Mueller
c02da6f448 Added syscall for destroying a cell. 2025-04-17 15:42:01 +02:00
Michael Mueller
bbfc9ffcd1 Fixed bugs in CIP and TIP implementations. 2025-04-17 15:40:57 +02:00
Michael Mueller
a6e880e267 base-tukija: Mark CPU used for main thread in CIP's current CPUs field. 2025-03-11 13:58:36 +01:00
Michael Mueller
058b190a81 base-tukija: Fixed Cpuset::count() reporting wrong number of CPUs. Also changed print() to output correct JSON. 2025-03-11 13:57:29 +01:00
Michael Mueller
71b84f75f6 base-tukija: Removed unnecessary header file. 2025-03-07 18:02:26 +01:00
Michael Mueller
61a3cca20e base-tukija: Added syscall to return or voluntarily yield CPU cores. 2025-03-05 14:39:58 +01:00
Michael Mueller
ff30866207 base-tukija: Fixed mapping of cell-local CPU IDs to NUMA domain IDs. 2025-03-05 14:33:29 +01:00
Michael Mueller
1ce8cd22e0 base-tukija: Added some documentation. 2025-02-27 16:45:50 +01:00
Michael Mueller
0b7dd68ca5 base-tukija: Fixed undefined reference to __cxa_guard related functions. 2025-02-27 16:27:27 +01:00
Michael Mueller
26bc8c6a7d base-tukija: Synchronized number of maximum supported CPUs with kernel value. 2025-02-27 16:26:30 +01:00
Michael Mueller
6447d12c15 base-tukija: Provide methods to access correct worker info structure in CIP based on a given location. 2025-02-27 16:25:50 +01:00
Michael Mueller
afbe7e1c3e Create mapping from pager indexes to kernel CPU IDs from affinity for cell. 2025-02-27 16:24:33 +01:00
Michael Mueller
9d0b5493f4 base-tukija: Properly implemented resource allocation syscall. 2025-02-27 16:22:40 +01:00
Michael Mueller
229d395b73 Provide complete affinity and not just affinity space to habitats. 2025-02-27 16:22:02 +01:00
Michael Mueller
da184d07a1 Added RPC to get a habitat's affinity. 2025-02-27 16:21:16 +01:00
Michael Mueller
1ea0f6ad52 Notify the hypervisor that an affinity has been defined for a newly created cell. 2025-02-25 10:29:13 +01:00
Michael Mueller
9135630c00 Notify hypervisor that core affinities were changed in CIP. This is necessary because the hypervisor has to update the ownership of the cell's CPU core resources. 2025-02-25 10:26:48 +01:00
Michael Mueller
ab060aad6b Update core affinities in CIP. 2025-02-24 18:20:21 +01:00
Michael Mueller
f35f6f65b9 Make cell's managed RPC objects, i.e. make cell capabilities valid. 2025-02-24 17:35:41 +01:00
Michael Mueller
372ca18156 Made cells into proper RPC objects. 2025-02-24 15:24:06 +01:00
Michael Mueller
854bab4769 Adapted page layout for CIP to match that defined in Tukija's sources. 2025-02-21 17:49:33 +01:00
Michael Mueller
05a1e9bec8 Reintegrated CPU core pre-partitioning as part of Habitat service. 2025-02-21 17:01:09 +01:00
Michael Mueller
b3991be657 Exclude CIP from region alloc. 2025-02-21 17:00:19 +01:00
Michael Mueller
bfd8f99f92 Made hoitaja instead of init to core's child component. This way, all components specified by the XML configuration are treated as children of Hoitaja and thus proper cells. 2025-02-21 15:38:48 +01:00
Michael Mueller
1970c59077 Added new platform service for creating and managing habitats of cells. 2025-02-21 15:35:51 +01:00
Michael Mueller
9e986181b6 Added RPC function to query the native PD selector for a PD capability. 2025-02-21 15:32:43 +01:00