Commit Graph

  • a2c89df195 kernel: convert some verbose log messages to trace messages main Max Wash 2026-03-21 10:27:23 +00:00
  • 35949fa8db vm: object: ensure page request offets are page-aligned Max Wash 2026-03-21 10:27:03 +00:00
  • d6c84565af x86_64: cmake: ensure the kernel is built as a static binary Max Wash 2026-03-21 10:26:12 +00:00
  • 4551e7b2e6 sched: implement various ways to end tasks and threads Max Wash 2026-03-18 21:07:43 +00:00
  • e03b2e07d0 vm: address-space: implement address space cleanup Max Wash 2026-03-18 21:07:27 +00:00
  • 24f9ef85bf sched: implement user-configurable fs and gs segment base addresses Max Wash 2026-03-18 21:07:05 +00:00
  • 63703a3d34 sched: don't reschedule a thread if its status is THREAD_STOPPED Max Wash 2026-03-18 21:02:30 +00:00
  • d801203f04 syscall: vm-object: fix dangling reference to newly-created object Max Wash 2026-03-18 21:02:19 +00:00
  • 2a1a0cf14d kernel: finish implementation of private and shared futexes Max Wash 2026-03-18 20:57:51 +00:00
  • b774415f64 sched: wait: implement wakeup_n, waitqueue_empty Max Wash 2026-03-18 20:56:15 +00:00
  • 04d05adbe8 kernel: handle: implement handle_table_destroy() Max Wash 2026-03-18 20:55:35 +00:00
  • c0e212ac98 x86_64: panic: fix incorrect kernel stack traversal Max Wash 2026-03-18 20:54:49 +00:00
  • 88405233a8 vm: object: implement object cleanup Max Wash 2026-03-18 20:53:56 +00:00
  • 42a293e753 x86_64: pmap: implement pmap_destroy() Max Wash 2026-03-18 20:53:24 +00:00
  • 1eef23ea98 thread: store struct msg on the stack instead of in the thread Max Wash 2026-03-18 20:52:47 +00:00
  • 30c9c9db45 kernel: add futex definitions Max Wash 2026-03-15 22:22:58 +00:00
  • c1e0b38952 vm: object: add missing include Max Wash 2026-03-15 22:22:43 +00:00
  • 8a38d940cc vm: address-space: add function to translate virtual addresses to physical Max Wash 2026-03-15 22:22:25 +00:00
  • a2e918c428 vm: evict PTE entries for transferred vm-object pages Max Wash 2026-03-15 14:40:24 +00:00
  • 399742cabf x86_64: pmap: implement pmap_remove Max Wash 2026-03-15 14:38:32 +00:00
  • cef4af53c9 x86_64: add pre-processor token to control hardware rng Max Wash 2026-03-15 14:38:11 +00:00
  • 0af35c70ef vm: implement demand-paging via userspace services with vm-controller Max Wash 2026-03-14 22:39:14 +00:00
  • f04c524bb5 vm: object: implement transferring pages between objects Max Wash 2026-03-14 22:36:21 +00:00
  • 5d04dbb15a kerne: object: add lock_pair() functions to object lock template macro Max Wash 2026-03-14 22:32:59 +00:00
  • a146f4a750 syscall: fix some missed-signal bugs in kern_object_wait Max Wash 2026-03-14 22:32:26 +00:00
  • 2d267d2b51 kernel: add a syscall to duplicate a handle Max Wash 2026-03-14 22:30:13 +00:00
  • b7f3bd77a7 libmango: update syscall definitions Max Wash 2026-03-14 22:29:29 +00:00
  • a50826eb15 x86_64: implement stack traces for user-mode stacks Max Wash 2026-03-14 22:28:24 +00:00
  • 62bdb51618 kernel: add functions to lock/unlock a pair of locks without saving irq flags Max Wash 2026-03-14 22:25:15 +00:00
  • 115a2e7415 x86_64: enable interrupts during pmap_handle_fault Max Wash 2026-03-14 22:23:38 +00:00
  • e73a5c41ce sched: fix thread_awaken manipulating a runqueue without locking it Max Wash 2026-03-14 22:23:07 +00:00
  • 89dac0c951 sched: add a thread flag to indicate when a thread is scheduled on a runqueue Max Wash 2026-03-14 22:22:05 +00:00
  • 7c630ece54 sched: add wait begin/end functions that don't change thread state Max Wash 2026-03-14 22:20:10 +00:00
  • 72145257de x86_64: generate a seed for the RNG with RDRAND when available Max Wash 2026-03-14 22:18:47 +00:00
  • d2203d9a65 kernel: replace random number generator with mersenne twister Max Wash 2026-03-14 22:16:56 +00:00
  • 5e7a467dff kernel: printk: fix log buffer overflow Max Wash 2026-03-14 22:15:39 +00:00
  • c628390f4a vm: replace vm-region with address-space Max Wash 2026-03-13 19:44:50 +00:00
  • c6b0bee827 kernel: wire dispatcher for kern_object_wait Max Wash 2026-03-12 20:43:21 +00:00
  • f67d3a0cb9 libmango: update syscall definitions Max Wash 2026-03-12 20:42:50 +00:00
  • 6ba236b2fe kernel: resolving a handle now increments the refcount of the corresponding object Max Wash 2026-03-12 20:42:05 +00:00
  • 5a37b5e148 kernel: handle: handle_table_transfer now ignores items with KERN_HANDLE_INVALID Max Wash 2026-03-12 20:41:01 +00:00
  • 2fb8f556b4 kernel: implement a generic object signalling system Max Wash 2026-03-12 20:40:23 +00:00
  • 921c91c02a vm: add vm-controller object Max Wash 2026-03-12 20:39:28 +00:00
  • 3fd608b623 kernel: add equeue object Max Wash 2026-03-12 20:37:51 +00:00
  • 7d4cede788 misc: adjust formatting Max Wash 2026-03-12 20:34:31 +00:00
  • 3f21e888d6 sched: split sched.h into separate header files Max Wash 2026-03-12 20:29:36 +00:00
  • de520cdd2d libmango: types: add macro to define a kern_msg_handle_t Max Wash 2026-03-10 19:08:49 +00:00
  • e84ed6057d channel: fix incorrect offset used in channel_write_msg Max Wash 2026-03-10 19:08:20 +00:00
  • 1d4cb882a8 libmango: types: add ssize_t definition Max Wash 2026-03-06 20:12:32 +00:00
  • 18b281debf kernel: bsp: add support for static bootstrap executables Max Wash 2026-03-06 20:12:12 +00:00
  • 09d292fd09 kernel: msg: include details about who sent a message Max Wash 2026-03-05 21:04:02 +00:00
  • 36c5ac7837 kernel: re-implement sending handles via port messages Max Wash 2026-03-01 19:10:01 +00:00
  • b1bdb89ca4 vm: region: add a function to write data from a kernel buffer to a vm-region Max Wash 2026-03-01 19:09:30 +00:00
  • f8a7a4285f syscall: msg: validate iovec array itself as well as the buffers it points to Max Wash 2026-02-26 20:55:17 +00:00
  • f9bf4c618a syscall: log: add task id to log output Max Wash 2026-02-26 20:54:14 +00:00
  • e4de3af00d kernel: remove support for sending kernel handles via port/channel Max Wash 2026-02-26 20:50:34 +00:00
  • b59d0d8948 syscall: msg: locking of vm-region is now handled by channel_read_msg Max Wash 2026-02-26 19:43:07 +00:00
  • 8cc877c251 kernel: port: dequeue kmsg struct once reply is received Max Wash 2026-02-26 19:42:29 +00:00
  • 2073cad97b kernel: fix channel locking and status update issues Max Wash 2026-02-26 19:42:12 +00:00
  • eb8758bc5e vm: region: fix some cases where regions weren't being unlocked after use. Max Wash 2026-02-26 19:41:40 +00:00
  • 1cdde0d32e kernel: add functions for safely (un)locking pairs of objects Max Wash 2026-02-26 19:38:49 +00:00
  • 1c7c90ef39 kernel: channel: implement channel_read_msg and msg_read Max Wash 2026-02-23 21:51:59 +00:00
  • 11c741bd68 libmango: add nr_read output param to msg_read Max Wash 2026-02-23 21:51:26 +00:00
  • 34bd6e479c vm: region: add nr_bytes_moved output param to memmove_v Max Wash 2026-02-23 21:50:21 +00:00
  • 5f0654430d syscall: add task_self, task_get_address_space, and vm_region_kill Max Wash 2026-02-23 18:43:49 +00:00
  • fd1bc0ad5f kernel: check object refcount before performing a recursive deletion Max Wash 2026-02-23 18:43:11 +00:00
  • b1ffdcf2bc vm: region: improve locking rules and semantics; implement region killing Max Wash 2026-02-23 18:35:45 +00:00
  • 5690dd5b9c kernel: add support for recursive object destruction (without recursion) Max Wash 2026-02-23 18:34:12 +00:00
  • 37ae7aeef7 kernel: implement globally-unique object ids Max Wash 2026-02-23 18:31:28 +00:00
  • dbe117135b x86_64: implement proper user/kernel %gs base switching Max Wash 2026-02-23 18:26:21 +00:00
  • 273557fa9f x86_64: lock task address space while performing a demand page-map Max Wash 2026-02-23 18:25:49 +00:00
  • fe107fbad3 kernel: locks: add spin lock/unlock function that don't change interrupt state Max Wash 2026-02-23 18:24:49 +00:00
  • b2d04c5983 vm: object: zero-initialise pages allocated for vm-object Max Wash 2026-02-21 23:19:49 +00:00
  • 6c2ca888ee x86_64: remove kernel image post-build ELF32 patch Max Wash 2026-02-21 23:18:22 +00:00
  • 044b3688aa vm: cache: all allocations are now zero-initialised Max Wash 2026-02-21 23:18:09 +00:00
  • 77936e3511 kernel: implement sending, receiving, and replying to message via port/channel Max Wash 2026-02-21 11:32:57 +00:00
  • 08c78bd6e7 vm: object: add vm_object_copy syscall trace output Max Wash 2026-02-21 11:30:44 +00:00
  • 2537ca46de libmango: add macros for easily defining msg and iovec variables Max Wash 2026-02-21 11:29:25 +00:00
  • 3190035086 libmango: add temporary formatted log function Max Wash 2026-02-21 11:28:58 +00:00
  • 7f049293f4 vm: memblock: add memblock_dump to header Max Wash 2026-02-21 11:27:28 +00:00
  • 9b2c2f6b29 x86_64: start the kernel bootstrap heap above 16MiB Max Wash 2026-02-21 11:24:36 +00:00
  • 6e39dd45a4 sched: only disable/enable interrupts if schedule() is called from non-IRQ context Max Wash 2026-02-21 11:23:43 +00:00
  • 855440f584 vm: add trace output Max Wash 2026-02-21 11:22:51 +00:00
  • e1e025ab6a vm: region: memmove_v() now supports iovec arrays stored in userspace Max Wash 2026-02-21 11:20:09 +00:00
  • 0680b73461 kernel: iovec: implement iterating through an iovec list stored in userspace Max Wash 2026-02-21 11:17:16 +00:00
  • aa0933be10 vm: region: implement reading from a user-space vm-region into a kernel buffer Max Wash 2026-02-21 11:16:11 +00:00
  • 8b188a0ac4 vm: region: fix iterator using wrong buffer offset when seek exceeds current buffer size Max Wash 2026-02-21 11:07:53 +00:00
  • ed25ee6761 vm: object: fix iterator using wrong buffer offset when seek exceeds current buffer size Max Wash 2026-02-21 11:07:12 +00:00
  • 0bae39e550 vm: zone: ensure memblock region bounds are page-aligned while creating zone blocks Max Wash 2026-02-21 11:01:58 +00:00
  • 9a90662eaa libmango: add userspace syscall call-gates Max Wash 2026-02-19 19:22:06 +00:00
  • 1d4fd4f586 syscall: add lots of syscalls Max Wash 2026-02-19 19:21:50 +00:00
  • dbc7b8fc59 kernel: libc: add headers Max Wash 2026-02-19 19:21:15 +00:00
  • aa9439c392 kernel: add channel/port ipc mechanism Max Wash 2026-02-19 19:21:04 +00:00
  • 8e072945d8 kernel: add functions for moving sets of handles between tasks Max Wash 2026-02-19 19:20:39 +00:00
  • 821246bc16 kernel: add functions for iterating through an array of iovecs Max Wash 2026-02-19 19:19:48 +00:00
  • fc8cdf62d3 bsp: adjust bsp executable mapping Max Wash 2026-02-19 19:18:31 +00:00
  • b2dbb88778 thread: move thread awaken functionality to a dedicated function Max Wash 2026-02-19 19:17:38 +00:00
  • 9424e7bcd6 thread: fix thread object data corruption Max Wash 2026-02-19 19:17:18 +00:00
  • 4c35723959 sched: add helper functions for opening and resolving handles for a task Max Wash 2026-02-19 19:16:59 +00:00
  • 2b7e5368c9 vm: implement copying data between different vm-regions Max Wash 2026-02-19 19:15:15 +00:00