Commit Graph

  • a50826eb15 x86_64: implement stack traces for user-mode stacks wash 2026-03-14 22:28:24 +00:00
  • 62bdb51618 kernel: add functions to lock/unlock a pair of locks without saving irq flags wash 2026-03-14 22:25:15 +00:00
  • 115a2e7415 x86_64: enable interrupts during pmap_handle_fault wash 2026-03-14 22:23:38 +00:00
  • e73a5c41ce sched: fix thread_awaken manipulating a runqueue without locking it 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 wash 2026-03-14 22:22:05 +00:00
  • 7c630ece54 sched: add wait begin/end functions that don't change thread state wash 2026-03-14 22:20:10 +00:00
  • 72145257de x86_64: generate a seed for the RNG with RDRAND when available wash 2026-03-14 22:18:47 +00:00
  • d2203d9a65 kernel: replace random number generator with mersenne twister wash 2026-03-14 22:16:56 +00:00
  • 5e7a467dff kernel: printk: fix log buffer overflow wash 2026-03-14 22:15:39 +00:00
  • c628390f4a vm: replace vm-region with address-space wash 2026-03-13 19:44:50 +00:00
  • c6b0bee827 kernel: wire dispatcher for kern_object_wait wash 2026-03-12 20:43:21 +00:00
  • f67d3a0cb9 libmango: update syscall definitions wash 2026-03-12 20:42:50 +00:00
  • 6ba236b2fe kernel: resolving a handle now increments the refcount of the corresponding object wash 2026-03-12 20:42:05 +00:00
  • 5a37b5e148 kernel: handle: handle_table_transfer now ignores items with KERN_HANDLE_INVALID wash 2026-03-12 20:41:01 +00:00
  • 2fb8f556b4 kernel: implement a generic object signalling system wash 2026-03-12 20:40:23 +00:00
  • 921c91c02a vm: add vm-controller object wash 2026-03-12 20:39:28 +00:00
  • 3fd608b623 kernel: add equeue object wash 2026-03-12 20:37:51 +00:00
  • 7d4cede788 misc: adjust formatting wash 2026-03-12 20:34:31 +00:00
  • 3f21e888d6 sched: split sched.h into separate header files wash 2026-03-12 20:29:36 +00:00
  • de520cdd2d libmango: types: add macro to define a kern_msg_handle_t wash 2026-03-10 19:08:49 +00:00
  • e84ed6057d channel: fix incorrect offset used in channel_write_msg wash 2026-03-10 19:08:20 +00:00
  • 1d4cb882a8 libmango: types: add ssize_t definition wash 2026-03-06 20:12:32 +00:00
  • 18b281debf kernel: bsp: add support for static bootstrap executables wash 2026-03-06 20:12:12 +00:00
  • 09d292fd09 kernel: msg: include details about who sent a message wash 2026-03-05 21:04:02 +00:00
  • 36c5ac7837 kernel: re-implement sending handles via port messages 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 wash 2026-03-01 19:09:30 +00:00
  • f8a7a4285f syscall: msg: validate iovec array itself as well as the buffers it points to wash 2026-02-26 20:55:17 +00:00
  • f9bf4c618a syscall: log: add task id to log output wash 2026-02-26 20:54:14 +00:00
  • e4de3af00d kernel: remove support for sending kernel handles via port/channel wash 2026-02-26 20:50:34 +00:00
  • b59d0d8948 syscall: msg: locking of vm-region is now handled by channel_read_msg wash 2026-02-26 19:43:07 +00:00
  • 8cc877c251 kernel: port: dequeue kmsg struct once reply is received wash 2026-02-26 19:42:29 +00:00
  • 2073cad97b kernel: fix channel locking and status update issues wash 2026-02-26 19:42:12 +00:00
  • eb8758bc5e vm: region: fix some cases where regions weren't being unlocked after use. wash 2026-02-26 19:41:40 +00:00
  • 1cdde0d32e kernel: add functions for safely (un)locking pairs of objects wash 2026-02-26 19:38:49 +00:00
  • 1c7c90ef39 kernel: channel: implement channel_read_msg and msg_read wash 2026-02-23 21:51:59 +00:00
  • 11c741bd68 libmango: add nr_read output param to msg_read wash 2026-02-23 21:51:26 +00:00
  • 34bd6e479c vm: region: add nr_bytes_moved output param to memmove_v wash 2026-02-23 21:50:21 +00:00
  • 5f0654430d syscall: add task_self, task_get_address_space, and vm_region_kill wash 2026-02-23 18:43:49 +00:00
  • fd1bc0ad5f kernel: check object refcount before performing a recursive deletion wash 2026-02-23 18:43:11 +00:00
  • b1ffdcf2bc vm: region: improve locking rules and semantics; implement region killing wash 2026-02-23 18:35:45 +00:00
  • 5690dd5b9c kernel: add support for recursive object destruction (without recursion) wash 2026-02-23 18:34:12 +00:00
  • 37ae7aeef7 kernel: implement globally-unique object ids wash 2026-02-23 18:31:28 +00:00
  • dbe117135b x86_64: implement proper user/kernel %gs base switching wash 2026-02-23 18:26:21 +00:00
  • 273557fa9f x86_64: lock task address space while performing a demand page-map wash 2026-02-23 18:25:49 +00:00
  • fe107fbad3 kernel: locks: add spin lock/unlock function that don't change interrupt state wash 2026-02-23 18:24:49 +00:00
  • b2d04c5983 vm: object: zero-initialise pages allocated for vm-object wash 2026-02-21 23:19:49 +00:00
  • 6c2ca888ee x86_64: remove kernel image post-build ELF32 patch wash 2026-02-21 23:18:22 +00:00
  • 044b3688aa vm: cache: all allocations are now zero-initialised wash 2026-02-21 23:18:09 +00:00
  • 77936e3511 kernel: implement sending, receiving, and replying to message via port/channel wash 2026-02-21 11:32:57 +00:00
  • 08c78bd6e7 vm: object: add vm_object_copy syscall trace output wash 2026-02-21 11:30:44 +00:00
  • 2537ca46de libmango: add macros for easily defining msg and iovec variables wash 2026-02-21 11:29:25 +00:00
  • 3190035086 libmango: add temporary formatted log function wash 2026-02-21 11:28:58 +00:00
  • 7f049293f4 vm: memblock: add memblock_dump to header wash 2026-02-21 11:27:28 +00:00
  • 9b2c2f6b29 x86_64: start the kernel bootstrap heap above 16MiB wash 2026-02-21 11:24:36 +00:00
  • 6e39dd45a4 sched: only disable/enable interrupts if schedule() is called from non-IRQ context wash 2026-02-21 11:23:43 +00:00
  • 855440f584 vm: add trace output wash 2026-02-21 11:22:51 +00:00
  • e1e025ab6a vm: region: memmove_v() now supports iovec arrays stored in userspace wash 2026-02-21 11:20:09 +00:00
  • 0680b73461 kernel: iovec: implement iterating through an iovec list stored in userspace wash 2026-02-21 11:17:16 +00:00
  • aa0933be10 vm: region: implement reading from a user-space vm-region into a kernel buffer wash 2026-02-21 11:16:11 +00:00
  • 8b188a0ac4 vm: region: fix iterator using wrong buffer offset when seek exceeds current buffer size wash 2026-02-21 11:07:53 +00:00
  • ed25ee6761 vm: object: fix iterator using wrong buffer offset when seek exceeds current buffer size wash 2026-02-21 11:07:12 +00:00
  • 0bae39e550 vm: zone: ensure memblock region bounds are page-aligned while creating zone blocks wash 2026-02-21 11:01:58 +00:00
  • 9a90662eaa libmango: add userspace syscall call-gates wash 2026-02-19 19:22:06 +00:00
  • 1d4fd4f586 syscall: add lots of syscalls wash 2026-02-19 19:21:50 +00:00
  • dbc7b8fc59 kernel: libc: add headers wash 2026-02-19 19:21:15 +00:00
  • aa9439c392 kernel: add channel/port ipc mechanism wash 2026-02-19 19:21:04 +00:00
  • 8e072945d8 kernel: add functions for moving sets of handles between tasks wash 2026-02-19 19:20:39 +00:00
  • 821246bc16 kernel: add functions for iterating through an array of iovecs wash 2026-02-19 19:19:48 +00:00
  • fc8cdf62d3 bsp: adjust bsp executable mapping wash 2026-02-19 19:18:31 +00:00
  • b2dbb88778 thread: move thread awaken functionality to a dedicated function wash 2026-02-19 19:17:38 +00:00
  • 9424e7bcd6 thread: fix thread object data corruption wash 2026-02-19 19:17:18 +00:00
  • 4c35723959 sched: add helper functions for opening and resolving handles for a task wash 2026-02-19 19:16:59 +00:00
  • 2b7e5368c9 vm: implement copying data between different vm-regions wash 2026-02-19 19:15:15 +00:00
  • 85006411bd kernel: add header files wash 2026-02-19 19:13:44 +00:00
  • f2e128c57e handle: re-arrange handle space layout wash 2026-02-19 19:11:11 +00:00
  • c6e1ba21dd vm: implement direct read/write/copy access to vm-object memory wash 2026-02-19 19:09:38 +00:00
  • 2f413c603d kernel: all string parameters now take a corresponding length parameter wash 2026-02-19 19:07:55 +00:00
  • 291a5f677e sched: implement passing arguments to user-mode threads wash 2026-02-19 19:04:00 +00:00
  • b188573eea x86_64: pmap: change pmap_remove* pointer args to virt_addr_t wash 2026-02-19 19:01:12 +00:00
  • c69aed254f x86_64: enable interrupts during syscall execution wash 2026-02-19 19:00:04 +00:00
  • 44c2904c11 x86_64: re-arrange user and kernel GDT entries for compatibility with syscall instruction wash 2026-02-19 18:59:37 +00:00
  • f89e3cb12c kernel: adjust formatting wash 2026-02-19 18:57:53 +00:00
  • 6019c9307d kernel: separate headers into kernel and user headers wash 2026-02-19 18:54:48 +00:00
  • e3dd48a0fa build: remove per-subdirectory log message wash 2026-02-08 16:17:47 +00:00
  • 9f7b7bdd2d kernel: refactor syscall dispatch system wash 2026-02-08 16:17:11 +00:00
  • c424e8127e kernel: bsp: update vm-region api usage wash 2026-02-08 15:52:04 +00:00
  • fb7d7635c2 vm: region: refactor to use offsets rather than absolute addresses wash 2026-02-08 15:51:51 +00:00
  • 409725f9d4 kernel: implementing mapping and execution of bsp executable wash 2026-02-08 13:12:48 +00:00
  • 1c74291b99 kernel: add a temporary syscall dispatch system wash 2026-02-08 13:12:24 +00:00
  • 5d28955dc6 vm: update vm-page documentation wash 2026-02-08 13:11:41 +00:00
  • ee82097017 sched: implement user-mode task and thread creation wash 2026-02-08 13:11:17 +00:00
  • d2f303680d sched: add root vm-region and handle table to struct task wash 2026-02-08 13:10:54 +00:00
  • 27bed1a3d3 sched: all kernel-mode tasks now have negative task ids wash 2026-02-08 13:09:29 +00:00
  • 18a5325fa7 sched: add PID_MAX definition wash 2026-02-08 13:07:14 +00:00
  • 7eaad64969 pmap: declare fault handler function and flags wash 2026-02-08 13:06:19 +00:00
  • 343689764f x86_64: irq: route user-mode page faults to pmap_handle_fault wash 2026-02-08 13:05:29 +00:00
  • 5f2ad06fb0 x86_64: all intermediate page table entries now have PTE_USR set wash 2026-02-08 13:03:41 +00:00
  • 67b3be9732 x86_64: add pmap_handle_fault to route user-mode page faults to vm-region to resolve wash 2026-02-08 13:03:28 +00:00
  • 883b5ac9e2 vm: add vm-region to manage userspace virtual memory address spaces wash 2026-02-08 12:59:08 +00:00
  • b8ccffd2d4 vm: add vm-object to represent non-contiguous physical memory allocations wash 2026-02-08 12:56:43 +00:00