Bananymous 
							
						 
						
							
								5e4e174d61 
								
							 
						 
						
							
							
								
								tests: Add tls test  
							
							
							
						 
						
							2025-06-16 15:07:26 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								4a00cb7d55 
								
							 
						 
						
							
							
								
								DynamicLoader: Add few more TLS relocations  
							
							
							
						 
						
							2025-06-16 15:06:48 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								b97c123764 
								
							 
						 
						
							
							
								
								BAN: Make WeakPtr::lock const  
							
							... 
							
							
							
							There is no reason why it would not be :)
Also this prevented upstream from compiling 
							
						 
						
							2025-06-11 16:53:43 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								69bdff6b7e 
								
							 
						 
						
							
							
								
								ports: Add links port  
							
							... 
							
							
							
							We now have graphical browser on banan-os :O 
							
						 
						
							2025-06-11 16:02:00 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								8574fcf6e1 
								
							 
						 
						
							
							
								
								ports: Add libwebp port  
							
							
							
						 
						
							2025-06-11 16:01:47 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								f4f424bf04 
								
							 
						 
						
							
							
								
								ports: Add libtiff port  
							
							
							
						 
						
							2025-06-11 16:01:47 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								ac745bfa3d 
								
							 
						 
						
							
							
								
								ports: Add libjpeg port  
							
							
							
						 
						
							2025-06-11 16:01:47 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								aa691f236e 
								
							 
						 
						
							
							
								
								ports: Add libpng port  
							
							
							
						 
						
							2025-06-11 16:01:47 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								a0a9d49d81 
								
							 
						 
						
							
							
								
								ports: Update toolchain triple and add post_configure  
							
							... 
							
							
							
							post_configure is called after default configure. This can be used for
port specific customization when using default configure function 
							
						 
						
							2025-06-11 16:01:47 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								125f8b591d 
								
							 
						 
						
							
							
								
								Kernel: Don't crash if socket tries to reconnect  
							
							... 
							
							
							
							:D 
							
						 
						
							2025-06-11 01:54:41 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								c97b60e7e5 
								
							 
						 
						
							
							
								
								LibGUI: Remove parameters I had forgot in function declarations  
							
							
							
						 
						
							2025-06-11 01:53:31 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								8a73414e3e 
								
							 
						 
						
							
							
								
								LibGUI: Add support for clip area to texture  
							
							
							
						 
						
							2025-06-11 01:53:31 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								ac22e006a4 
								
							 
						 
						
							
							
								
								Shell: Don't get stuck on broken state when failing to build command  
							
							
							
						 
						
							2025-06-10 11:03:02 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								30d5d85d1d 
								
							 
						 
						
							
							
								
								userspace: Add `test` utility  
							
							
							
						 
						
							2025-06-08 23:56:39 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								6f74f3c386 
								
							 
						 
						
							
							
								
								BAN: Allow constexpr construction of StringView  
							
							
							
						 
						
							2025-06-07 18:29:32 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								515918329c 
								
							 
						 
						
							
							
								
								ports: Add SpecSeek port  
							
							
							
						 
						
							2025-06-06 17:41:59 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								8ea0a67280 
								
							 
						 
						
							
							
								
								Terminal: Add support for tabs  
							
							
							
						 
						
							2025-06-06 16:41:06 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								5ad7d7edb1 
								
							 
						 
						
							
							
								
								DynamicLoader: Fix TLS on 32 bit platform  
							
							... 
							
							
							
							There were two problems with my previous implementation
- TLS was not allocated if nothing used it. There is a fallback
  initialization in _init_libc, but this was not enough if one of the
  init functions tried to access errno.
- __tls_get_addr was not resolved. If __tls_get_addr was called through
  a plt entry, everything would just break :( 
							
						 
						
							2025-06-06 16:27:07 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								00c6820825 
								
							 
						 
						
							
							
								
								LibC: Make {open,sys,close}log use their own FILE instead of stddbg  
							
							
							
						 
						
							2025-06-06 11:59:15 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								6beaafcf11 
								
							 
						 
						
							
							
								
								LibC: Define std{in,out,err,dbg} with their actual names  
							
							
							
						 
						
							2025-06-06 11:56:39 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								e92f039a17 
								
							 
						 
						
							
							
								
								Kernel: Fix tcp sending with already sent unacknowledged bytes  
							
							
							
						 
						
							2025-06-06 11:55:44 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								ef76ffa1c1 
								
							 
						 
						
							
							
								
								Kernel: Remove unnecessary hack  
							
							... 
							
							
							
							This is no longer needed as thread unlocks its spinlock before calling
Process::exit() on terminating signal 
							
						 
						
							2025-06-06 11:13:55 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								652eb2346c 
								
							 
						 
						
							
							
								
								Kernel: Fix syscall interrupt disabling  
							
							... 
							
							
							
							If thread had a terminating signal, syscall leaving would try to lock
process's mutex while not having interrupts enabled 
							
						 
						
							2025-06-06 11:12:48 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								66726090ec 
								
							 
						 
						
							
							
								
								Kenrel: Fix TCP connection closing  
							
							... 
							
							
							
							If TCP socket was connected with connect() instead of accept() it would
never send FIN to other end when it was closed. 
							
						 
						
							2025-06-06 11:10:29 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								b668173cba 
								
							 
						 
						
							
							
								
								Kernel: Fix pseudo terminal writability  
							
							
							
						 
						
							2025-06-06 11:09:50 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								a7e20d6e85 
								
							 
						 
						
							
							
								
								LibC: Fix getnameinfo port endianness  
							
							
							
						 
						
							2025-06-06 06:52:56 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								c6ded82406 
								
							 
						 
						
							
							
								
								Kernel: Fix a deadlock when thread is executing terminating signal  
							
							
							
						 
						
							2025-06-06 06:52:27 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								a76c6faffc 
								
							 
						 
						
							
							
								
								Kernel: Fix a deadlock when process is exiting  
							
							
							
						 
						
							2025-06-06 06:52:02 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								81ff71a97f 
								
							 
						 
						
							
							
								
								Kernel: Track the number of recursive spinlocks a thread is holding  
							
							
							
						 
						
							2025-06-06 06:51:15 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								56db0efe58 
								
							 
						 
						
							
							
								
								Kernel: Add missing file for race condition fixes :)  
							
							
							
						 
						
							2025-06-06 04:03:37 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								5eefd98e1b 
								
							 
						 
						
							
							
								
								Kernel: Add debugging macro to dump syscalls that take a long time  
							
							
							
						 
						
							2025-06-06 04:00:57 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								eecdad50a6 
								
							 
						 
						
							
							
								
								Kernel: Fix most of mutex + block race conditions  
							
							... 
							
							
							
							All block functions now take an optional mutex parameter that is
atomically unlocked instead of having the user unlock it before hand.
This prevents a ton of race conditions everywhere in the code! 
							
						 
						
							2025-06-06 03:59:22 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								96d5ed9cc7 
								
							 
						 
						
							
							
								
								Kernel: Fix E1000 driver interrupts  
							
							... 
							
							
							
							I have no idea why, but E1000 seems to be missing interrupts frequently
when clearing ICR only at the end of the interrupt handler 
							
						 
						
							2025-06-06 03:45:35 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								73090ecb37 
								
							 
						 
						
							
							
								
								Kernel: TTY set EPOLLOUT  
							
							
							
						 
						
							2025-06-05 22:04:51 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								8812704601 
								
							 
						 
						
							
							
								
								Kernel: Make sure IPv4 and ARP packets are not missed  
							
							... 
							
							
							
							This is a really hacky solution but will do until i get atomic
unblocking with respect to locks 
							
						 
						
							2025-06-05 22:03:15 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								0f189d410e 
								
							 
						 
						
							
							
								
								Kernel: Fix unix socket recv from  
							
							... 
							
							
							
							If connection on unix socket was closed and other end tries to recvfrom,
the thread would enter a fucked up state where it held the socket's
spinlock when returning to userspace. 
							
						 
						
							2025-06-05 22:02:53 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								cfeabc4580 
								
							 
						 
						
							
							
								
								Kernel/Terminal: Fix ANSI SGR 8 bit color parsing  
							
							
							
						 
						
							2025-06-05 20:43:57 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								49f203d61d 
								
							 
						 
						
							
							
								
								Terminal: Add ANSI CSI P and ANSI SGR 22  
							
							
							
						 
						
							2025-06-05 02:41:48 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								a912a4dc67 
								
							 
						 
						
							
							
								
								LibGUI: Remove fill_color from texture copy API  
							
							... 
							
							
							
							Nothing was using this and it just overcomplicated everything 
							
						 
						
							2025-06-05 02:40:51 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								f79db874bf 
								
							 
						 
						
							
							
								
								Kernel: Fix ANSI CSI 1J  
							
							... 
							
							
							
							I was accidentally clearing the whole screen when I needed to clear from
cursor to the end of the screen 
							
						 
						
							2025-06-05 02:38:57 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								8de19aff3c 
								
							 
						 
						
							
							
								
								Kernel/Terminal: Fix 24 bit ANSI SGR color parsing  
							
							
							
						 
						
							2025-06-05 02:38:07 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								bf41b448d6 
								
							 
						 
						
							
							
								
								Kernel: Fix TCP sending  
							
							... 
							
							
							
							- Fix race condition when adding packet to send buffer before other end
  has acknowledged it
- Allow sending multiple packets before receiving ACK for previous ones 
							
						 
						
							2025-06-04 22:21:35 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								448632cf11 
								
							 
						 
						
							
							
								
								Kernel: Add fast path to pselect and ppoll  
							
							... 
							
							
							
							If events are available right away, don't create epoll object to wait
on. Also fix pselect return value to the number of bits set. Previously
return value could've been greater than that if epoll return EPOLLERR or
EPOLLHUP for events that were not listened to 
							
						 
						
							2025-06-04 17:51:22 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								11174bfa14 
								
							 
						 
						
							
							
								
								BuildSystem: Rename toolchain -> x86_64-pc-banan_os  
							
							
							
						 
						
							2025-06-03 23:02:10 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								84b1f3990c 
								
							 
						 
						
							
							
								
								LibC: Fix getnameinfo  
							
							... 
							
							
							
							How was i doing everything so wrong :D 
							
						 
						
							2025-06-03 16:36:39 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								943069b2a3 
								
							 
						 
						
							
							
								
								Kernel: Socket EPIPE and send SIGPIPE on write after hang up  
							
							
							
						 
						
							2025-06-03 10:24:44 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								e305698e6b 
								
							 
						 
						
							
							
								
								Kernel: Fix epoll EPOLLHUP and EPOLLERR reporting  
							
							
							
						 
						
							2025-06-03 10:23:53 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								4c0b7d44b4 
								
							 
						 
						
							
							
								
								Kernel: Enable ECHOE and ECHOK, support VKILL, fix VEOF  
							
							
							
						 
						
							2025-06-02 16:26:53 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								775c77c0fa 
								
							 
						 
						
							
							
								
								Shell: Get default backspace key from c_cc[VERASE]  
							
							
							
						 
						
							2025-06-02 15:55:20 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								fb466b5af7 
								
							 
						 
						
							
							
								
								Kernel: use termios c_cc values instead of hardcoded characters  
							
							
							
						 
						
							2025-06-02 15:54:11 +03:00