diff options
-rw-r--r-- | Kernel/Syscalls/mmap.cpp | 13 |
1 files changed, 1 insertions, 12 deletions
diff --git a/Kernel/Syscalls/mmap.cpp b/Kernel/Syscalls/mmap.cpp index bf3030f524..cfe775c20c 100644 --- a/Kernel/Syscalls/mmap.cpp +++ b/Kernel/Syscalls/mmap.cpp @@ -5,7 +5,6 @@ * SPDX-License-Identifier: BSD-2-Clause */ -#include <AK/kmalloc.h> #include <Kernel/Arch/SmapDisabler.h> #include <Kernel/Arch/x86/MSR.h> #include <Kernel/Arch/x86/SafeMem.h> @@ -185,16 +184,8 @@ ErrorOr<FlatPtr> Process::sys$mmap(Userspace<const Syscall::SC_mmap_params*> use return EINVAL; Memory::Region* region = nullptr; - Memory::VirtualRange range { {}, 0 }; - ArmedScopeGuard scope_guard = [&] { - if (region) - address_space().deallocate_region(*region); - else if (range.is_valid()) - address_space().page_directory().range_allocator().deallocate(range); - }; - - range = TRY([&]() -> ErrorOr<Memory::VirtualRange> { + auto range = TRY([&]() -> ErrorOr<Memory::VirtualRange> { if (map_randomized) return address_space().page_directory().range_allocator().try_allocate_randomized(rounded_size, alignment); @@ -257,8 +248,6 @@ ErrorOr<FlatPtr> Process::sys$mmap(Userspace<const Syscall::SC_mmap_params*> use PerformanceManager::add_mmap_perf_event(*this, *region); - scope_guard.disarm(); - return region->vaddr().get(); } |