ladybird/Kernel
Andrew Kaster 98c86e5109 Kernel: Move E2BIG calculation from Thread to Process
Thread::make_userspace_stack_for_main_thread is only ever called from
Process::do_exec, after all the fun ELF loading and TSS setup has
occured.

The calculations in there that check if the combined argv + envp
size will exceed the default stack size are not used in the rest of
the stack setup. So, it should be safe to move this to the beginning
of do_exec and bail early with -E2BIG, just like the man pages say.

Additionally, advertise this limit in limits.h to be a good POSIX.1
citizen. :)
2019-10-23 07:45:41 +02:00
..
Arch/i386 Kernel: Move Boot/ into Arch/i386/Boot (#667) 2019-10-20 08:15:39 +02:00
Devices KeyboardDevice: Rename 0xe0 flag for clarity. 2019-10-17 23:39:24 +02:00
FileSystem ProcFS: make procfs$pid_fds always returns a valid JSON array. 2019-10-23 07:45:13 +02:00
Heap Kernel: Make SlabAllocator fall back to kmalloc() when slabs run out 2019-10-10 11:58:15 +02:00
Net Net: Put a bunch of socket debug logging behind FOO_DEBUG 2019-10-18 16:50:23 +02:00
TTY TTY: Implement Canonical mode and basic echoing. 2019-10-20 10:51:12 +02:00
VM APIC: Enable APIC and start APs 2019-10-16 19:14:02 +02:00
.bochsrc Meta: Make Serenity run on Bochs once again 2019-08-06 21:09:24 +02:00
.gitignore Meta: Removed all gitignore in the source tree only keeping the root one 2019-06-30 10:41:26 +02:00
Assertions.h Kernel: Move i386.{cpp,h} => Arch/i386/CPU.{cpp,h} 2019-06-07 20:02:01 +02:00
build-gpt-image-grub.sh PartitionTable: Initial GPT Support, Adding Block Limit 2019-10-07 10:11:39 +02:00
build-image-grub.sh Build: Remove grub from default build process 2019-06-04 07:15:44 -07:00
build-image-qemu.sh Build: Fix incorrect user and group settings for disk image (#280) 2019-07-03 16:57:37 +02:00
build-root-filesystem.sh HackStudio: Start working on an IDE for SerenityOS 2019-10-21 18:46:55 +02:00
CMOS.cpp AK: Rename the common integer typedefs to make it obvious what they are. 2019-07-03 21:20:13 +02:00
CMOS.h AK: Rename the common integer typedefs to make it obvious what they are. 2019-07-03 21:20:13 +02:00
Console.cpp AK: Rename the common integer typedefs to make it obvious what they are. 2019-07-03 21:20:13 +02:00
Console.h AK: Rename the common integer typedefs to make it obvious what they are. 2019-07-03 21:20:13 +02:00
DoubleBuffer.cpp Revert "Kernel: Make DoubleBuffer use a KBuffer instead of kmalloc()ing" 2019-10-18 15:58:06 +02:00
DoubleBuffer.h Revert "Kernel: Make DoubleBuffer use a KBuffer instead of kmalloc()ing" 2019-10-18 15:58:06 +02:00
FB.h Kernel: Add framebuffer ioctls; wrap raw ioctls with a C API 2019-08-18 07:40:02 +02:00
grub_gpt.cfg PartitionTable: Initial GPT Support, Adding Block Limit 2019-10-07 10:11:39 +02:00
grub.cfg Kernel: Add serial_debug cmdline parameter 2019-08-11 08:22:42 +02:00
init.cpp APIC: Enable APIC and start APs 2019-10-16 19:14:02 +02:00
install.sh Build: Install most headers to Root (and libcore.a/libgui.a) 2019-05-17 21:59:48 +02:00
IO.h Kernel: First cut of a sb16 driver 2019-07-13 08:00:24 +02:00
IRQHandler.cpp Kernel: Move PIC.cpp into Arch/i386/ 2019-07-09 15:04:43 +02:00
IRQHandler.h AK: Rename the common integer typedefs to make it obvious what they are. 2019-07-03 21:20:13 +02:00
KBuffer.h Kernel: Make Region single-owner instead of ref-counted 2019-09-27 14:25:42 +02:00
KBufferBuilder.cpp Kernel: Add KBufferBuilder, similar to StringBuilder but for KBuffer 2019-08-06 20:04:12 +02:00
KBufferBuilder.h AK: Rename <AK/AKString.h> to <AK/String.h> 2019-09-06 15:36:54 +02:00
KeyCode.h AK: Rename the common integer typedefs to make it obvious what they are. 2019-07-03 21:20:13 +02:00
KParams.cpp AK: Make HashMap::get(Key) return an Optional<Value>. 2019-07-24 10:25:43 +02:00
KParams.h AK: Rename <AK/AKString.h> to <AK/String.h> 2019-09-06 15:36:54 +02:00
kprintf.cpp Kernel: Write logs into dmesg from the start of the boot process 2019-09-09 08:14:00 +02:00
KResult.h Kernel: Align the KResult value storage appropriately. 2019-08-02 19:22:48 +02:00
kstdio.h Kernel: Add serial_debug cmdline parameter 2019-08-11 08:22:42 +02:00
KSyms.cpp ByteBuffer: Remove pointer() in favor of data() 2019-09-30 08:57:01 +02:00
KSyms.h AK: Rename <AK/AKString.h> to <AK/String.h> 2019-09-06 15:36:54 +02:00
linker.ld Kernel: Move Boot/ into Arch/i386/Boot (#667) 2019-10-20 08:15:39 +02:00
Lock.cpp AK: Add Atomic.h 2019-10-12 19:30:59 +02:00
Lock.h AK: Add Atomic.h 2019-10-12 19:30:59 +02:00
makeall.sh HackStudio: Start working on an IDE for SerenityOS 2019-10-21 18:46:55 +02:00
Makefile Kernel: Move Boot/ into Arch/i386/Boot (#667) 2019-10-20 08:15:39 +02:00
mkmap.sh Kernel: Don't symbolicate symbol+offset for obvious non-kernel addresses. 2019-04-30 14:47:22 +02:00
MousePacket.h AK: Rename the common integer typedefs to make it obvious what they are. 2019-07-03 21:20:13 +02:00
Multiboot.h AK: Rename the common integer typedefs to make it obvious what they are. 2019-07-03 21:20:13 +02:00
PCI.cpp Kernel: Hide PCI logs behind a debug flag like other logs 2019-08-14 06:28:53 +02:00
PCI.h Kernel: Add more PCI configuration reading functions 2019-08-14 06:28:53 +02:00
Process.cpp Kernel: Move E2BIG calculation from Thread to Process 2019-10-23 07:45:41 +02:00
Process.h Kernel: Add a Linux-style getrandom syscall 2019-10-13 18:03:21 +02:00
ProcessTracer.cpp AK: Rename the common integer typedefs to make it obvious what they are. 2019-07-03 21:20:13 +02:00
ProcessTracer.h Kernel: Move File.{cpp,h} into FileSystem/ 2019-07-09 15:04:45 +02:00
RTC.cpp Kernel: Fix BIOS date/time on hardware 2019-09-28 13:59:49 +02:00
RTC.h Add clang-format file 2019-05-28 17:31:20 +02:00
run Runner: Enable QEMU's KVM mode by default 2019-10-13 15:07:23 +02:00
Scheduler.cpp Kernel: Add exception_code to RegisterDump. 2019-10-07 16:39:47 +02:00
Scheduler.h Kernel: Stop idling after handling an IRQ 2019-09-14 20:21:10 +02:00
SharedBuffer.cpp Kernel: Rename "vmo" to "vmobject" everywhere 2019-09-04 11:27:14 +02:00
SharedBuffer.h Kernel: Rename "vmo" to "vmobject" everywhere 2019-09-04 11:27:14 +02:00
StdLib.cpp Kernel: Move kmalloc() into a Kernel/Heap/ directory 2019-09-16 09:01:44 +02:00
StdLib.h Kernel: Add strncmp() 2019-08-11 16:30:43 +02:00
sync.sh Build: Remove grub from default build process 2019-06-04 07:15:44 -07:00
Syscall.cpp Kernel: Add a Linux-style getrandom syscall 2019-10-13 18:03:21 +02:00
Syscall.h Kernel: Add a Linux-style getrandom syscall 2019-10-13 18:03:21 +02:00
Thread.cpp Kernel: Move E2BIG calculation from Thread to Process 2019-10-23 07:45:41 +02:00
Thread.h Kernel: Move E2BIG calculation from Thread to Process 2019-10-23 07:45:41 +02:00
UnixTypes.h Kernel: Add SIOCGIFHWADDR ioctl to get the MAC address of an adapter 2019-10-02 18:20:11 +02:00