diff options
Diffstat (limited to 'mirai/kata')
| -rw-r--r-- | mirai/kata/memory.zig | 6 | ||||
| -rw-r--r-- | mirai/kata/pool.zig | 2 |
2 files changed, 0 insertions, 8 deletions
diff --git a/mirai/kata/memory.zig b/mirai/kata/memory.zig index 6e835af..a479c25 100644 --- a/mirai/kata/memory.zig +++ b/mirai/kata/memory.zig @@ -218,17 +218,11 @@ pub fn load_segment( } } -/// Clean up all memory associated with a Kata -/// Called when a Kata is dissolved/exits pub fn cleanup(kata: *types.Kata) void { if (kata.page_table != 0) { - // Destroy the page table and free all associated pages - // This frees: user stack, program pages, page table structures - // Does NOT free: shared kernel pages, framebuffer paging.destroy_page_table(kata.page_table); kata.page_table = 0; } - kata.stack_top = 0; kata.user_stack_top = 0; } diff --git a/mirai/kata/pool.zig b/mirai/kata/pool.zig index b4b90cd..8c057f9 100644 --- a/mirai/kata/pool.zig +++ b/mirai/kata/pool.zig @@ -71,9 +71,7 @@ pub fn dissolve(kata_id: u32) void { for (&pool, 0..) |*kata, i| { if (used[i] and kata.id == kata_id) { - // Clean up all memory associated with this Kata memory.cleanup(kata); - kata.state = .Dissolved; used[i] = false; waker.wake_waiting(kata_id); |
