:: commit e22d5eff39c9044c17fc7d75eb47c7a9077ad6c9

mintsuki <mintsuki@protonmail.com> — 2022-04-17 05:56

parents: fbf1e1584e

limine: Increment default stack size to 64KiB

diff --git a/PROTOCOL.md b/PROTOCOL.md
index 2e5e2e02..8db31cb5 100644
--- a/PROTOCOL.md
+++ b/PROTOCOL.md
@@ -149,7 +149,7 @@ Legacy PIC and IO APIC IRQs are all masked.
 If booted by EFI/UEFI, boot services are exited.
 
 `rsp` is set to point to a stack, in bootloader-reserved memory, which is
-at least 16KiB (16384 bytes) in size, or the size specified in the Stack
+at least 64KiB (65536 bytes) in size, or the size specified in the Stack
 Size Request (see below). An invalid return address of 0 is pushed
 to the stack before jumping to the kernel.
 
@@ -602,7 +602,7 @@ struct limine_smp_info {
 * `processor_id` - ACPI Processor UID as specified by the MADT
 * `lapic_id` - Local APIC ID of the processor as specified by the MADT
 * `goto_address` - An atomic write to this field causes the parked CPU to
-jump to the written address, on a 16KiB (or Stack Size Request size) stack. A pointer to the
+jump to the written address, on a 64KiB (or Stack Size Request size) stack. A pointer to the
 `struct limine_smp_info` structure of the CPU is passed in `RDI`. Other than
 that, the CPU state will be the same as described for the bootstrap
 processor. This field is unused for the structure describing the bootstrap
diff --git a/common/protos/limine.c b/common/protos/limine.c
index 6401e2f8..12ae1121 100644
--- a/common/protos/limine.c
+++ b/common/protos/limine.c
@@ -373,7 +373,7 @@ FEAT_END
 #endif
 
     // Stack size
-    uint64_t stack_size = 16384;
+    uint64_t stack_size = 65536;
 FEAT_START
     struct limine_stack_size_request *stack_size_request = get_request(LIMINE_STACK_SIZE_REQUEST);
     if (stack_size_request == NULL) {
tab: 248 wrap: offon