Bananymous
cea19ecc31
Kernel: Fix possible crash during exec
2025-08-28 15:55:40 +03:00
Bananymous
706cfeb443
Kernel: Allow file backed mapping be larger than inode size
...
This is only allowed if the mapping does **not** exceed a page boundary.
Some port was doing an exactly two-page-mapping on a file that was one
and a half page long
2025-08-28 15:55:40 +03:00
Bananymous
d9c91589f0
Kernel: Don't limit /tmp max size
2025-08-28 15:55:40 +03:00
Bananymous
9854691265
LibC: Don't leak fds on rename
2025-08-28 15:55:40 +03:00
Bananymous
32afa33a06
LibC: Make sure FILE's buffer does not get overflown
2025-08-28 15:55:40 +03:00
Bananymous
c6946d0145
LibC: Use pthread_mutex on FILE instead of atomics
2025-08-28 15:55:40 +03:00
Bananymous
abbe7b79d6
Kernel: Add /proc/<pid>/exe
2025-08-28 15:55:40 +03:00
Bananymous
e4abe75043
Kernel: Add /proc/self
2025-08-28 15:55:40 +03:00
Bananymous
b904503691
ports: Update GCC 15.1.0->15.2.0
2025-08-28 15:55:40 +03:00
Bananymous
2db42dfb2e
BuildSystem: Don't download config.sub every hour
...
There isn't really any need to :D
2025-08-25 22:16:23 +03:00
Bananymous
10bd24e585
Kernel: Fix signal delivery without an alternate stack
...
I had only tested that sigaltstack worked, so I didn't notice my normal
signals broke :D
2025-08-25 22:16:23 +03:00
Bananymous
f926e599fa
Kernel: Zero initialize Processors
...
This moves processor array to .bss reducing data size by 8192 bytes :)
This needed GCC updated to 15.2.0 because of an internal compiler error
I found :)
2025-08-25 18:29:14 +03:00
Bananymous
e7b518ba67
BuildSystem: binutils 2.44->2.45, gcc 15.1.0->15.2.0
2025-08-25 18:25:36 +03:00
Bananymous
a4698f0bde
Kernel: Fix IOAPIC max redirection entry fetching
...
Also max redirection entry is an index, not count so comparisons should
check for equality :)
2025-08-25 17:15:55 +03:00
Bananymous
9a6eae69ba
Kernel: Replace all occurances of BSB with BSP
2025-08-25 17:11:32 +03:00
Bananymous
0ff365c7f0
ports: Add qemu port
2025-08-21 03:11:16 +03:00
Bananymous
214e7a5672
ports: Add glib port
2025-08-21 03:11:16 +03:00
Bananymous
24b69a6dea
ports: Add libffi port
2025-08-21 03:11:16 +03:00
Bananymous
699235147c
ports: Add pcre2 port
2025-08-21 03:11:16 +03:00
Bananymous
72ad413a61
ports/SDL2: Handle window focus events
2025-08-21 03:11:16 +03:00
Bananymous
f11bb082e4
WindowServer/LibGUI: Add window focus events
2025-08-21 03:11:16 +03:00
Bananymous
2f3fd6867d
Kernel: Add VERY HACKY MAP_FIXED fix
...
This definitely will break stuff but I don't think anything depends on
this (except maybe dynamic loader)
This WILL get fixed soon (I hope :D)
2025-08-21 03:11:16 +03:00
Bananymous
350ae90bb6
Kernel: Make all futexes shared
...
Some stuff tries to use shared futexes so make them all shared. Private
futexes would be faster as they are process specific but supporting both
would need some reworks
2025-08-21 02:56:17 +03:00
Bananymous
fb61cab70d
LibC: Rewrite pthread_mutex using a futex
2025-08-21 02:52:49 +03:00
Bananymous
1d6c08478d
LibC: Fix sigsetjmp
...
the call from C sigsetjmp messed up rbp, now sigsetjmp is also written
in assembly.
I did not test the 32 bit code, just ported the tested 64 bit version
over :D
2025-08-21 02:52:49 +03:00
Bananymous
0dfe0b7023
Kernel/LibC: Implement sigaltstack
2025-08-21 02:52:49 +03:00
Bananymous
def236b7cd
Kernel/LibC: Implement sigwait
2025-08-20 20:16:19 +03:00
Bananymous
247743ef9c
Kernel/LibC: Implement sigsuspend
2025-08-20 20:14:54 +03:00
Bananymous
49122cf729
Kernel: Allow adding signals to thread that are blocked
2025-08-20 18:35:18 +03:00
Bananymous
84f579be81
ports: Add nano port
2025-08-19 17:00:14 +03:00
Bananymous
3d5f23a1b2
LibC: Implement wctomb
2025-08-19 16:44:18 +03:00
Bananymous
8b26b6604d
LibC: Make mbstate_t into int
...
This is not used, but makes more sense than an empty struct
2025-08-19 16:29:46 +03:00
Bananymous
f88e55ffa8
ports: Add nyancat port
2025-08-19 16:23:30 +03:00
Bananymous
34bdcb12e5
Kernel: Fix termios and enter key handling
...
Enter key now produces expected \r which gets converted to \n by default
by the ICRNL input flag.
Also input flags are now handled always, not just when ICANON is set.
I don't know why I though ICANON should disable input handling
2025-08-19 16:23:30 +03:00
Bananymous
95b353dae5
LibInput: Fix numpad keycode generation
...
I had made this function with broken PS/2 scancode set 3, so it seemed
like it worked
2025-08-19 16:23:30 +03:00
Bananymous
6560f229b1
Kernel: Fix PS/2 scancode set 3 numpad keys
2025-08-19 16:23:30 +03:00
Bananymous
8c9ab2d68c
WindowServer: Fix crash when window closes while being "button window"
2025-08-19 16:23:30 +03:00
Bananymous
8496726ab1
Terminal: Ignore some control characters
2025-08-19 16:23:30 +03:00
Bananymous
32d7f429f8
Kernel: Fix default ignored signals
...
SIGWINCH and SIGCANCEL ended up interrupting functions even when they
were marked as SIG_DFL. Now resizing the userspace terminal emulator
does not get interrupted!
2025-08-19 16:23:30 +03:00
Bananymous
0f52f49188
Terminal: Remove unused code
2025-08-19 16:23:30 +03:00
Bananymous
b334259a07
AudioServer: Don't allow client to fully halt audio
2025-08-19 16:23:30 +03:00
Bananymous
74af4e9150
ports/SDL2_mixer: Add MIDI support
2025-08-19 16:23:30 +03:00
Bananymous
8b7790ded2
Kernel: Fix userspace pointer checks
...
Some syscalls were unconditionally validating optional paramenters which
were allowed to be null pointers
2025-08-19 16:23:30 +03:00
Bananymous
3e97a82af0
Kernel: Allow getgroups with size
...
This can be used to query the number of groups
2025-08-19 16:23:30 +03:00
Bananymous
0066b20413
Kernel: Fix spinlock leaks with unix sockets
2025-08-19 16:23:30 +03:00
Bananymous
9d6656451a
LibC: Make time_t signed integer
...
Some port like python3 assumes this is the case
2025-08-19 16:23:30 +03:00
Bananymous
32f980e259
Kernel: Fix ACPI namespace lookup for multi segment names
2025-08-19 16:23:30 +03:00
Bananymous
ca9361abc1
DynamicLoader: Add support for dladdr
2025-08-19 16:23:30 +03:00
Bananymous
36cb3d56fe
LibC: Define Dl_info_t and add stub for dladdr
2025-08-19 16:23:30 +03:00
Bananymous
0bece8a54c
Kernel: Add missing ACPI resource header
2025-08-19 16:23:30 +03:00