ladybird/Kernel
Idan Horowitz fd3be7ffcc Kernel: Setup APIC AP cores boot environment before init_stage2
Since this range is mapped in already in the kernel page directory, we
can initialize it before jumping into the first kernel process which
lets us avoid mapping in the range into init_stage2's address space.

This brings us half-way to removing the shared bottom 2 MiB mapping in
every process, leaving only the Prekernel.
2021-12-22 00:02:36 -08:00
..
API Kernel+LibC: Stub out getifaddrs() and freeifaddrs() 2021-12-22 00:02:36 -08:00
Arch AK+Everywhere: Replace __builtin bit functions 2021-12-21 22:13:51 +01:00
Bus Kernel/SysFS: Prevent allocation for component name during construction 2021-12-14 09:01:33 +01:00
Devices Kernel+LibC: Move errno definitions to Kernel/API/POSIX 2021-12-16 22:21:35 +03:30
FileSystem Kernel: Move symlink recursion limit to .h, increase it to 8 2021-12-21 12:54:11 -08:00
Firmware Kernel/SysFS: Don't allocate ACPISysFS components in constructors 2021-12-14 09:01:33 +01:00
Graphics Kernel: Use copy_typed_from_user() in more places :^) 2021-12-18 11:30:10 +01:00
Heap Kernel: Add missing include to SlabAllocator 2021-12-09 22:53:42 -08:00
Interrupts Kernel: Setup APIC AP cores boot environment before init_stage2 2021-12-22 00:02:36 -08:00
Library Kernel: Mark kernel smart-pointer classes as [[nodiscard]] 2021-12-05 15:31:03 +01:00
Locking Kernel: Collapse blocking logic for exclusive Mutex' restore_lock() 2021-12-15 23:34:11 -08:00
Memory AK+Everywhere: Replace __builtin bit functions 2021-12-21 22:13:51 +01:00
Net Kernel: Define and return the ARPHRD_* device type in SIOCGIFHWADDR 2021-12-22 00:02:36 -08:00
Prekernel Kernel: Do not do integer to pointer conversion in constexpr functions 2021-12-04 11:59:59 -08:00
Storage AK+Everywhere: Replace __builtin bit functions 2021-12-21 22:13:51 +01:00
Syscalls Kernel: Implement sysconf(_SC_SYMLOOP_MAX) 2021-12-21 12:54:11 -08:00
Tasks Kernel: Mark kernel smart-pointer classes as [[nodiscard]] 2021-12-05 15:31:03 +01:00
Time Kernel: Remove unused String.h includes 2021-12-11 13:15:26 -08:00
TTY Kernel: Use copy_typed_from_user() in more places :^) 2021-12-18 11:30:10 +01:00
AddressSanitizer.cpp Everywhere: Use bgianf@serenityos.org for my copyright attribution 2021-04-22 21:15:54 +02:00
AddressSanitizer.h Everywhere: Use bgianf@serenityos.org for my copyright attribution 2021-04-22 21:15:54 +02:00
Assertions.h Kernel: Remove ASM_Wrapper include from platform independent processor.h 2021-12-01 11:22:04 -08:00
AtomicEdgeAction.h Kernel: Add per platform Processor.h headers 2021-10-14 01:23:08 +01:00
BootInfo.h Kernel: Add an x86 include check+error in x86/PageDirectory.h 2021-12-01 11:22:04 -08:00
CMakeLists.txt Kernel: Build with -O2 by default 2021-12-16 22:48:16 +01:00
CMOS.cpp Kernel: Move x86 IO instructions code into the x86 specific folder 2021-10-01 12:27:20 +02:00
CMOS.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
CommandLine.cpp Kernel: Ensure SMP mode is not enabled if IOAPIC mode is disabled 2021-12-20 11:00:31 -08:00
CommandLine.h Kernel: Ensure SMP mode is not enabled if IOAPIC mode is disabled 2021-12-20 11:00:31 -08:00
Coredump.cpp Kernel: Avoid repeated memory zeroing while generating coredumps 2021-11-21 20:22:48 +01:00
Coredump.h Kernel: Replace KResult and KResultOr<T> with Error and ErrorOr<T> 2021-11-08 01:10:53 +01:00
Debug.h.in Kernel: Add AC97_DEBUG macro 2021-11-28 19:26:22 +02:00
DoubleBuffer.cpp Kernel: Share code between DoubleBuffer's read() and peek() 2021-11-21 20:22:48 +01:00
DoubleBuffer.h Kernel: Share code between DoubleBuffer's read() and peek() 2021-11-21 20:22:48 +01:00
embedmap.sh Kernel: Make new kernel build process work on macOS 2021-07-15 11:04:30 +02:00
Forward.h Kernel: Replace KResult and KResultOr<T> with Error and ErrorOr<T> 2021-11-08 01:10:53 +01:00
FutexQueue.cpp Kernel: Don't register thread as custom data for FutexBlocker 2021-08-24 01:57:11 +02:00
FutexQueue.h Kernel: Don't register thread as custom data for FutexBlocker 2021-08-24 01:57:11 +02:00
GlobalProcessExposed.cpp Kernel: Handle string format errors in SlabAllocator stats :^) 2021-11-30 11:16:35 +01:00
init.cpp Kernel: Setup APIC AP cores boot environment before init_stage2 2021-12-22 00:02:36 -08:00
KBuffer.h Kernel: Replace KResult and KResultOr<T> with Error and ErrorOr<T> 2021-11-08 01:10:53 +01:00
KBufferBuilder.cpp Everywhere: Pass AK::StringView by value 2021-11-11 01:27:46 +01:00
KBufferBuilder.h AK: Convert AK::Format formatting helpers to returning ErrorOr<void> 2021-11-17 00:21:13 +01:00
KLexicalPath.cpp Everywhere: Pass AK::StringView by value 2021-11-11 01:27:46 +01:00
KLexicalPath.h Everywhere: Pass AK::StringView by value 2021-11-11 01:27:46 +01:00
kprintf.cpp Kernel+UE+LibC: Remove unused dbgputch syscall 2021-11-24 22:56:39 +01:00
kstdio.h Kernel+UE+LibC: Remove unused dbgputch syscall 2021-11-24 22:56:39 +01:00
KString.cpp Kernel: Add an error propagating KString::format(..) API :^) 2021-11-30 11:16:35 +01:00
KString.h Kernel: Add an error propagating KString::format(..) API :^) 2021-11-30 11:16:35 +01:00
KSyms.cpp Kernel: Use ksyms in-place instead of duplicating them into eternal heap 2021-12-18 11:30:10 +01:00
KSyms.h Everywhere: Pass AK::StringView by value 2021-11-11 01:27:46 +01:00
linker.ld Kernel: Support split data sections 2021-10-17 17:09:58 +01:00
MiniStdLib.cpp Kernel: Build MiniStdLib.cpp in aarch64 builds 2021-09-07 20:15:15 +01:00
mkmap.sh Kernel: Use our toolchain's c++filt tool for the kernel map 2021-07-29 10:38:31 +02:00
Multiboot.h Prekernel: Export some multiboot parameters in our own BootInfo struct 2021-07-27 13:15:16 +02:00
Panic.cpp Kernel: Separate panic behavior from bootmode 2021-10-25 23:38:28 +02:00
Panic.h Kernel/Graphics + SystemServer: Support text mode properly 2021-05-16 19:58:33 +02:00
PerformanceEventBuffer.cpp Kernel: Mask kernel addresses in perf event streams for non-superuser 2021-12-19 18:18:38 +01:00
PerformanceEventBuffer.h Everywhere: Pass AK::StringView by value 2021-11-11 01:27:46 +01:00
PerformanceManager.h Kernel: Resolve clang-tidy readability-qualified-auto warning 2021-11-14 22:52:35 +01:00
PhysicalAddress.h AK: Convert AK::Format formatting helpers to returning ErrorOr<void> 2021-11-17 00:21:13 +01:00
Process.cpp Kernel: Make perfcore files owned by UID=0, GID=0 2021-12-19 18:18:38 +01:00
Process.h Kernel: Make sys${ftruncate,pread} take off_t as const pointer 2021-12-18 11:30:10 +01:00
ProcessExposed.cpp Kernel: Use DistinctNumeric for filesystem ID's 2021-11-18 21:11:30 +01:00
ProcessExposed.h Kernel+SystemServer: Add /dev/tty 2021-12-12 22:32:35 +01:00
ProcessGroup.cpp Kernel: Replace KResult and KResultOr<T> with Error and ErrorOr<T> 2021-11-08 01:10:53 +01:00
ProcessGroup.h Kernel: Replace KResult and KResultOr<T> with Error and ErrorOr<T> 2021-11-08 01:10:53 +01:00
ProcessProcFSTraits.cpp Kernel+SystemServer: Add /dev/tty 2021-12-12 22:32:35 +01:00
ProcessSpecificExposed.cpp Kernel+SystemServer: Add /dev/tty 2021-12-12 22:32:35 +01:00
Random.cpp Kernel: Add per platform Processor.h headers 2021-10-14 01:23:08 +01:00
Random.h Everywhere: Make ByteBuffer::{create_*,copy}() OOM-safe 2021-09-06 01:53:26 +02:00
RTC.cpp Kernel: Move x86 IO instructions code into the x86 specific folder 2021-10-01 12:27:20 +02:00
RTC.h Kernel: Ensure we read valid values from the RTC CMOS registers 2021-08-04 19:53:04 +02:00
SanCov.cpp Kernel/KCOV: Bring closer to typical SerenityOS coding style 2021-09-06 01:55:27 +02:00
Scheduler.cpp AK+Everywhere: Replace __builtin bit functions 2021-12-21 22:13:51 +01:00
Scheduler.h Kernel: Rename SpinLock => Spinlock 2021-08-22 03:34:10 +02:00
Sections.h Kernel: Support loading the kernel at almost arbitrary virtual addresses 2021-07-27 13:15:16 +02:00
StdLib.cpp Kernel: Remove unused String.h includes 2021-12-11 13:15:26 -08:00
StdLib.h Kernel: Remove unused forward declaration of Syscall::StringArgument 2021-11-14 22:52:35 +01:00
Syscall.cpp Kernel: Enable SMAP protection earlier during syscall entry 2021-12-18 11:30:10 +01:00
Thread.cpp Kernel+LibC: Implement sigtimedwait() 2021-12-12 08:34:19 +02:00
Thread.h Kernel+LibC: Implement sigtimedwait() 2021-12-12 08:34:19 +02:00
ThreadBlockers.cpp AK+Everywhere: Replace __builtin bit functions 2021-12-21 22:13:51 +01:00
ThreadTracer.cpp Kernel: Add cross platform RegisterState header and Aarch64 version 2021-10-15 21:48:45 +01:00
ThreadTracer.h Kernel: Resolve clang-tidy readability-implicit-bool-conversion warnings 2021-11-14 22:52:35 +01:00
TimerQueue.cpp Kernel: Remove a bunch of unused TimerQueue functions 2021-09-07 22:16:25 +02:00
TimerQueue.h AK+Everywhere: Reduce the number of template parameters of IntrusiveList 2021-09-10 18:05:46 +03:00
UBSanitizer.cpp Kernel: Add per platform Processor.h headers 2021-10-14 01:23:08 +01:00
UnixTypes.h Kernel: Move {Process,Thread,Session,ProcessGroup}ID to Kernel/Forward.h 2021-08-14 19:58:11 +02:00
UserOrKernelBuffer.cpp Kernel: Replace KResult and KResultOr<T> with Error and ErrorOr<T> 2021-11-08 01:10:53 +01:00
UserOrKernelBuffer.h Kernel+LibC: Move errno definitions to Kernel/API/POSIX 2021-12-16 22:21:35 +03:30
VirtualAddress.h AK: Convert AK::Format formatting helpers to returning ErrorOr<void> 2021-11-17 00:21:13 +01:00
WaitQueue.cpp Kernel: Don't register thread as custom data for WaitQueueBlocker 2021-08-24 01:57:11 +02:00
WaitQueue.h Kernel: Don't register thread as custom data for WaitQueueBlocker 2021-08-24 01:57:11 +02:00
WorkQueue.cpp Kernel: Mark kernel smart-pointer classes as [[nodiscard]] 2021-12-05 15:31:03 +01:00
WorkQueue.h Kernel: Make WorkQueue::WorkItem slab allocated 2021-10-26 10:50:44 +02:00