summaryrefslogtreecommitdiff
path: root/kernel/includes
diff options
context:
space:
mode:
authorAnton Kling <anton@kling.gg>2024-04-13 21:07:02 +0200
committerAnton Kling <anton@kling.gg>2024-04-13 21:07:02 +0200
commit92f848244796881994c1f147633123c45da219b6 (patch)
tree4ad209b6ede26b8475b7f0c6afb2382336dbbac7 /kernel/includes
parent008b84bf5308d2f180905130653a656bfedccf8c (diff)
Kernel: Don't hard fail if the kernel can't allocate memory.
Currently this is just a improvement of error handling but it should also try to free up memory where it is possible.
Diffstat (limited to 'kernel/includes')
-rw-r--r--kernel/includes/mmu.h4
1 files changed, 1 insertions, 3 deletions
diff --git a/kernel/includes/mmu.h b/kernel/includes/mmu.h
index 211a950..83ea6e0 100644
--- a/kernel/includes/mmu.h
+++ b/kernel/includes/mmu.h
@@ -41,7 +41,7 @@ typedef struct PageDirectory {
int mmu_allocate_region(void *ptr, size_t n, mmu_flags flags,
PageDirectory *pd);
void mmu_free_pagedirectory(PageDirectory *pd);
-void mmu_allocate_shared_kernel_region(void *rc, size_t n);
+int mmu_allocate_shared_kernel_region(void *rc, size_t n);
void *mmu_find_unallocated_virtual_range(void *addr, size_t length);
void mmu_remove_virtual_physical_address_mapping(void *ptr, size_t length);
void mmu_free_address_range(void *ptr, size_t length, PageDirectory *pd);
@@ -59,9 +59,7 @@ void *mmu_is_valid_user_c_string(const char *ptr, size_t *size);
void flush_tlb(void);
void paging_init(u64 memsize, multiboot_info_t *mb);
PageDirectory *get_active_pagedirectory(void);
-void move_stack(u32 new_stack_address, u32 size);
void switch_page_directory(PageDirectory *directory);
-void *allocate_frame(Page *page, int rw, int is_kernel);
PageDirectory *clone_directory(PageDirectory *original);
void *virtual_to_physical(void *address, PageDirectory *directory);
void *ksbrk(size_t s);