kernel: finish implementation of private and shared futexes

This commit is contained in:
2026-03-18 20:57:51 +00:00
parent b774415f64
commit 2a1a0cf14d
10 changed files with 254 additions and 29 deletions

View File

@@ -41,5 +41,7 @@
#define SYS_VM_CONTROLLER_CREATE_OBJECT 0x25u
#define SYS_VM_CONTROLLER_DETACH_OBJECT 0x26u
#define SYS_VM_CONTROLLER_SUPPLY_PAGES 0x27u
#define SYS_FUTEX_WAIT 0x28u
#define SYS_FUTEX_WAKE 0x29u
#endif

View File

@@ -44,6 +44,13 @@
#define PAGE_REQUEST_DIRTY 0x02u
#define PAGE_REQUEST_DETACH 0x03u
/* futex special values */
#define FUTEX_WAKE_ALL ((size_t)-1)
/* futex flags */
#define FUTEX_PRIVATE 0x01u
#define FUTEX_SHARED 0x02u
#define IOVEC(p, len) \
{ \
.io_base = (virt_addr_t)(p), .io_len = (len), \