From 191e7ef3001e422c2f58efe7381d13932e1c1537 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matteo=20Gm=C3=BCr?= Date: Mon, 24 Feb 2025 08:40:46 +0000 Subject: Add noexpect to deallocate calls --- arch/x86_64/src/memory/heap/bump_allocator.cpp | 2 +- arch/x86_64/src/memory/heap/global_heap_allocator.cpp | 2 +- arch/x86_64/src/memory/heap/linked_list_allocator.cpp | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) (limited to 'arch/x86_64/src') diff --git a/arch/x86_64/src/memory/heap/bump_allocator.cpp b/arch/x86_64/src/memory/heap/bump_allocator.cpp index a9fb121..df95346 100644 --- a/arch/x86_64/src/memory/heap/bump_allocator.cpp +++ b/arch/x86_64/src/memory/heap/bump_allocator.cpp @@ -42,7 +42,7 @@ namespace teachos::arch::memory::heap } } - auto bump_allocator::deallocate(void * pointer) -> void + auto bump_allocator::deallocate(void * pointer) noexcept -> void { if (pointer) { diff --git a/arch/x86_64/src/memory/heap/global_heap_allocator.cpp b/arch/x86_64/src/memory/heap/global_heap_allocator.cpp index 235c544..c1ca160 100644 --- a/arch/x86_64/src/memory/heap/global_heap_allocator.cpp +++ b/arch/x86_64/src/memory/heap/global_heap_allocator.cpp @@ -10,7 +10,7 @@ namespace teachos::arch::memory::heap auto global_heap_allocator::allocate(std::size_t size) -> void * { return get().allocate(size); } - auto global_heap_allocator::deallocate(void * pointer) -> void { get().deallocate(pointer); } + auto global_heap_allocator::deallocate(void * pointer) noexcept -> void { get().deallocate(pointer); } auto global_heap_allocator::register_heap_allocator(heap_allocator_type new_type) -> void { diff --git a/arch/x86_64/src/memory/heap/linked_list_allocator.cpp b/arch/x86_64/src/memory/heap/linked_list_allocator.cpp index 9beb466..a824c8a 100644 --- a/arch/x86_64/src/memory/heap/linked_list_allocator.cpp +++ b/arch/x86_64/src/memory/heap/linked_list_allocator.cpp @@ -59,7 +59,7 @@ namespace teachos::arch::memory::heap exception_handling::panic("[Linked List Allocator] Out of memory"); } - auto linked_list_allocator::deallocate(void * pointer) -> void + auto linked_list_allocator::deallocate(void * pointer) noexcept -> void { mutex.lock(); -- cgit v1.2.3 From 2f1f0fa8b0dc1893219be68ab8bf653b5d6349fb Mon Sep 17 00:00:00 2001 From: Fabian Imhof Date: Thu, 27 Feb 2025 07:58:01 +0000 Subject: clear interrupt flag --- arch/x86_64/src/boot/boot.s | 2 ++ 1 file changed, 2 insertions(+) (limited to 'arch/x86_64/src') diff --git a/arch/x86_64/src/boot/boot.s b/arch/x86_64/src/boot/boot.s index 8d27ea1..2197dce 100644 --- a/arch/x86_64/src/boot/boot.s +++ b/arch/x86_64/src/boot/boot.s @@ -197,8 +197,10 @@ _start: call enable_paging call enable_sse + cli // Clears the interrupt flag during the GDT setup lgdt (global_descriptor_table_pointer) jmp $global_descriptor_table_code,$_transition_to_long_mode + // The interrupt flag is set in cpp after setting up the GDT call halt -- cgit v1.2.3