Bananymous 
							
						 
						
							
								054b41383f 
								
							 
						 
						
							
							
								
								Kernel: Implement SpinLock unsafe that does not keep track of locker  
							
							... 
							
							
							
							This will be used in scheduler where thread ids are changing 
							
						 
						
							2024-03-01 15:48:08 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								02ad199138 
								
							 
						 
						
							
							
								
								Kernel: Move interrupt status functions to kernel/Interrupts.h  
							
							
							
						 
						
							2024-03-01 02:13:28 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								65c4f9db5b 
								
							 
						 
						
							
							
								
								Kernel: Replace CriticalScopes with SpinLocks in Process/Thread  
							
							
							
						 
						
							2024-03-01 02:13:28 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								51e38b7614 
								
							 
						 
						
							
							
								
								Kernel: Replace CriticalScope with SpinLock in SerialTTY  
							
							
							
						 
						
							2024-02-29 19:17:28 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								90878a7c2b 
								
							 
						 
						
							
							
								
								Kernel: Replace CriticalScopes with SpinLocks in networking code  
							
							
							
						 
						
							2024-02-29 19:17:28 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								7f028f70d5 
								
							 
						 
						
							
							
								
								Kernel: Replace CriticalScopes with SpinLock in PS/2 and input code  
							
							
							
						 
						
							2024-02-29 19:17:28 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								ec0cb5fd54 
								
							 
						 
						
							
							
								
								Kernel: Remove CriticalScopes from memory handing code  
							
							
							
						 
						
							2024-02-29 19:16:41 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								682de62c57 
								
							 
						 
						
							
							
								
								Kernel: Replace HPET CriticalScope with SpinLock  
							
							
							
						 
						
							2024-02-29 19:15:33 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								18253b6966 
								
							 
						 
						
							
							
								
								Kernel: Replace InterruptController CriticalScopes with SpinLock  
							
							
							
						 
						
							2024-02-29 19:15:33 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								21f05eb118 
								
							 
						 
						
							
							
								
								Merge branch 'main' into locking  
							
							
							
						 
						
							2024-02-28 23:00:02 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								d94f6388b7 
								
							 
						 
						
							
							
								
								Kernel: Fix all broken locks from new mutexes  
							
							
							
						 
						
							2024-02-28 22:45:34 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								1971813336 
								
							 
						 
						
							
							
								
								BAN: Add HashMap::remove(iterator)  
							
							
							
						 
						
							2024-02-28 22:35:42 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								3c88d2aad3 
								
							 
						 
						
							
							
								
								BAN: Implement find() for HashMap  
							
							
							
						 
						
							2024-02-28 13:20:24 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								5c39903323 
								
							 
						 
						
							
							
								
								Kernel: Simplify writing to threads stacks  
							
							... 
							
							
							
							This can be done more simply as all stacks are now page aligned 
							
						 
						
							2024-02-28 13:20:17 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								6d59a2b45d 
								
							 
						 
						
							
							
								
								Kernel: Remove VirtualRanges created in kmalloc memory  
							
							... 
							
							
							
							These were only used as stacks of kernel threads, but they can just
as well be allocated as full pages from Heap 
							
						 
						
							2024-02-28 13:19:18 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								09c24088a2 
								
							 
						 
						
							
							
								
								Kernel: Cleanup kmalloc VirtualRange creation  
							
							
							
						 
						
							2024-02-28 13:19:18 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								efdc4817bb 
								
							 
						 
						
							
							
								
								Kernel: Print to debug log ICMP unreachable messages  
							
							... 
							
							
							
							These messages should be forwarded to underlying sockets 
							
						 
						
							2024-02-28 13:19:18 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								0c97abb053 
								
							 
						 
						
							
							
								
								BAN: Implement find() for HashMap  
							
							
							
						 
						
							2024-02-27 15:40:30 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								1759d247d9 
								
							 
						 
						
							
							
								
								Kernel: Simplify writing to threads stacks  
							
							... 
							
							
							
							This can be done more simply as all stacks are now page aligned 
							
						 
						
							2024-02-25 21:57:33 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								21dc64dc21 
								
							 
						 
						
							
							
								
								Kernel: Remove VirtualRanges created in kmalloc memory  
							
							... 
							
							
							
							These were only used as stacks of kernel threads, but they can just
as well be allocated as full pages from Heap 
							
						 
						
							2024-02-25 21:56:37 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								264eff3ad0 
								
							 
						 
						
							
							
								
								Kernel: Cleanup kmalloc VirtualRange creation  
							
							
							
						 
						
							2024-02-25 21:33:30 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								05c7b21b0a 
								
							 
						 
						
							
							
								
								Kernel: Print to debug log ICMP unreachable messages  
							
							... 
							
							
							
							These messages should be forwarded to underlying sockets 
							
						 
						
							2024-02-25 21:32:37 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								40b626b0aa 
								
							 
						 
						
							
							
								
								Kernel: Rewrite all kernel mutexes  
							
							... 
							
							
							
							Now SpinLock is actually just a spin lock and I added a Mutex that
does the same as the old "SpinLock". This is in preparation for
starting to support smp and making the kernel smp safe. This commit
also removes obsolete PageTableScope and CriticalScope which should
now be used by alternative APIs. 
							
						 
						
							2024-02-25 21:29:43 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								6ebfe05fce 
								
							 
						 
						
							
							
								
								BAN: Add parenthesis in ASSERT macros  
							
							
							
						 
						
							2024-02-25 21:22:47 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								59abb5d344 
								
							 
						 
						
							
							
								
								Kernel: Make HPET read_main_counter() atomic with 32 bit main counter  
							
							
							
						 
						
							2024-02-23 13:42:04 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								9594ee8e47 
								
							 
						 
						
							
							
								
								Kernel: Start making device numbers unique for each device  
							
							
							
						 
						
							2024-02-22 15:53:48 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								7a4ec7f7a3 
								
							 
						 
						
							
							
								
								Kernel: Use static_cast instead of c-style cast in HPET  
							
							
							
						 
						
							2024-02-22 14:44:39 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								51db1706e9 
								
							 
						 
						
							
							
								
								Kernel: Fix checking of partition boundaries on write  
							
							
							
						 
						
							2024-02-22 13:31:12 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								ac9e71d9c7 
								
							 
						 
						
							
							
								
								LibC: Fix parsing mode from string  
							
							
							
						 
						
							2024-02-20 13:25:24 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								f3f5ca1bd8 
								
							 
						 
						
							
							
								
								Kernel: Seed RNG by real time if no RDRAND available  
							
							
							
						 
						
							2024-02-20 13:00:26 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								b979023b9d 
								
							 
						 
						
							
							
								
								Shell: Add test cases for stroul and strod in builtin `test-strtox`  
							
							
							
						 
						
							2024-02-16 15:35:02 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								915dea01c9 
								
							 
						 
						
							
							
								
								LibC: fix printf %e for inf/nan values  
							
							
							
						 
						
							2024-02-16 15:34:24 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								566bb73897 
								
							 
						 
						
							
							
								
								LibC: Implement ato* and strto* functions for floating point numbers  
							
							
							
						 
						
							2024-02-16 15:28:52 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								fb0d8d746f 
								
							 
						 
						
							
							
								
								BAN: Add {max,min}_exponent{2,10} to numeric_limits<T>  
							
							
							
						 
						
							2024-02-16 15:27:40 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								1b24c4f279 
								
							 
						 
						
							
							
								
								LibC: Implement strtou{l,ll}  
							
							
							
						 
						
							2024-02-15 12:25:56 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								a5a041e637 
								
							 
						 
						
							
							
								
								LibC: Remove cast from S_* macros so they can be used in preprocessor  
							
							
							
						 
						
							2024-02-15 12:20:09 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								c469d9b3ff 
								
							 
						 
						
							
							
								
								Shell: Add builtin test for strtol `test-strtol`  
							
							
							
						 
						
							2024-02-14 22:38:16 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								373d166076 
								
							 
						 
						
							
							
								
								LibC: Implement ato{i,l,ll} and strto{l,ll}  
							
							
							
						 
						
							2024-02-14 22:35:23 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								3c54243ac7 
								
							 
						 
						
							
							
								
								BAN: Implement some numerical limits  
							
							
							
						 
						
							2024-02-14 22:34:42 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								1f467580ee 
								
							 
						 
						
							
							
								
								Userspace: Add test for popen  
							
							
							
						 
						
							2024-02-14 17:23:26 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								1ba883719a 
								
							 
						 
						
							
							
								
								LibC: Implement popen and pclose  
							
							
							
						 
						
							2024-02-14 17:22:45 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								f73e954b28 
								
							 
						 
						
							
							
								
								Kernel: Remove SpinLock from Pipe  
							
							... 
							
							
							
							Pipe already is using lock on the inode. If you read from pipe when
there was no data, pipe blocked indefinately since writes were blocked
by Inode::m_lock. 
							
						 
						
							2024-02-14 17:21:32 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								de629291b9 
								
							 
						 
						
							
							
								
								LibC: Implement freopen, rewind and fix bugs in code  
							
							... 
							
							
							
							Now everything will be properly locked once threads are implemented.
All functions "lock" the stream for the wanted operation 
							
						 
						
							2024-02-14 16:36:48 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								7eb5d220fd 
								
							 
						 
						
							
							
								
								Userspace: Implement getopt for testing libc getopt()  
							
							
							
						 
						
							2024-02-14 15:01:27 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								4cd9abdd15 
								
							 
						 
						
							
							
								
								LibC: Implement getopt()  
							
							
							
						 
						
							2024-02-14 15:00:58 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								198dde8365 
								
							 
						 
						
							
							
								
								Kernel: Add klibc for kernel  
							
							... 
							
							
							
							Now building same source as libc is not needed and libc doesn't
have to do hacks to allow kernel compilation 
							
						 
						
							2024-02-14 15:00:04 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								b165340662 
								
							 
						 
						
							
							
								
								Kernel: Don't use strcat in kernel code  
							
							
							
						 
						
							2024-02-14 14:59:13 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								5ad4340679 
								
							 
						 
						
							
							
								
								BAN: Use strerrordesc_np instead of strerror  
							
							
							
						 
						
							2024-02-14 14:58:27 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								b56fa4a29d 
								
							 
						 
						
							
							
								
								LibC: Implement fscanf  
							
							... 
							
							
							
							I had missed this when I was implementing *scanf functions 
							
						 
						
							2024-02-14 14:39:22 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								e946b392c9 
								
							 
						 
						
							
							
								
								LibC: Add definition for S_IFMT  
							
							... 
							
							
							
							I was using S_IFMASK, but linux seems to use this 
							
						 
						
							2024-02-14 14:39:22 +02:00