Block a user
ee276a3a35
Add the nodiscard attribute to make and make_array
dad95a8160
Map the page bitmap to virtual memory
1ebd892c16
Convert uses of u64 to usize
b5c6ae253d
Make LinkedList a lot better
09e447d9d2
Heap: Use LinkedList instead of doing things manually
d8f75f1d3c
LinkedList: Add an append_after() method
146da13e43
LinkedList: Make sure to explicitly mark the first node's next and last nodes as nullptr
07e6ebd3cc
LinkedList: Fix nonnull_or_error
87fb195202
Add DoublyLinkedList data structure
dd29156c85
Alloc: make() now takes variadic arguments, to forward to the constructor
eef74e2897
Add a generic error code (ENONE)
26b44e651d
Change safe_{sub,add,mul} so they perform the operation only once
b338126854
Heap: Use safe_mul in kcalloc()
e91c04b1d1
luna: Introduce safe arithmetic operations, which return an error if an operation would overflow
8ff9cb4b96
x86_64: Add a friendlier handler for page faults
1d0dd8fa93
Use KernelVM in kmalloc() and friends
ba758bcef8
Initialize the KernelVM
6c3024d4ee
Heap: Count the heap blocks' size in the size required for an allocation
0edabd6d87
Heap: Add a new block to the end of the linked list