Bananymous 
							
						 
						
							
								cbcb9f9044 
								
							 
						 
						
							
							
								
								Kernel: Warn on unsupport `clock_gettime` `clock_id`s  
							
							
							
						 
						
							2025-01-25 17:31:17 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								2a16a67aed 
								
							 
						 
						
							
							
								
								Kernel: Ignore SA_RESTART flag on sigaction  
							
							... 
							
							
							
							This is a big hack but a lot of ports set this flag. This seems really
annoying to implement properly 
							
						 
						
							2025-01-24 19:34:22 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								ee078fc638 
								
							 
						 
						
							
							
								
								Kernel: Fix fd status/descriptor flag handling  
							
							... 
							
							
							
							I was not sharing status and offset on fork and I was sharing descriptor
flags on dup/dup2 
							
						 
						
							2025-01-17 20:12:04 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								9893c90e74 
								
							 
						 
						
							
							
								
								Kernel: Remove SYS_DUP and implement it using fcntl F_DUPFD  
							
							
							
						 
						
							2025-01-17 19:29:47 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								82978da5e3 
								
							 
						 
						
							
							
								
								Kernel: Cleanup AML code  
							
							
							
						 
						
							2025-01-17 16:20:00 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								80ce9d546a 
								
							 
						 
						
							
							
								
								Kernel: Don't error out on SYS_WAIT with W{CONTINUED,UNTRACED}  
							
							... 
							
							
							
							As I don't support stopping and continuing processes these flags are
effecively no-ops 
							
						 
						
							2025-01-17 16:14:52 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								34775633b2 
								
							 
						 
						
							
							
								
								Kernel: Clear DF on every interrupt handler  
							
							... 
							
							
							
							I was missing this and it lead to UB with my new mem* functions that
were implemented with `rep` 
							
						 
						
							2025-01-17 16:11:13 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								03b5c8e76e 
								
							 
						 
						
							
							
								
								Kernel: Fix disk caching when `readonly` is specified  
							
							
							
						 
						
							2025-01-16 16:16:38 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								609067cefa 
								
							 
						 
						
							
							
								
								Kernel: Cleanup internal CPUID functions declarations  
							
							
							
						 
						
							2025-01-14 22:57:44 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								9d497ad311 
								
							 
						 
						
							
							
								
								Kernel: Cleanup interrupt stub definitions  
							
							
							
						 
						
							2025-01-14 22:55:06 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								ebecbb69ec 
								
							 
						 
						
							
							
								
								LibC: Implement some mem* and str* functions in assembly  
							
							... 
							
							
							
							This made them a lot faster on modern cpus with optimized rep stos and
rep movs 
							
						 
						
							2025-01-14 22:50:46 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								b129bab81a 
								
							 
						 
						
							
							
								
								Kernel: Make mem* and str* functions weak symbols  
							
							
							
						 
						
							2025-01-14 19:08:03 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								d189f00f38 
								
							 
						 
						
							
							
								
								Kernel: Null terminate tmpfs directory entries  
							
							
							
						 
						
							2025-01-12 16:03:09 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								a5cf92b2ff 
								
							 
						 
						
							
							
								
								Kernel: Use uint64_t instead of size_t for AML node conversion  
							
							... 
							
							
							
							This allows 32 bit to compile again :) 
							
						 
						
							2024-12-30 06:27:49 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								69137cddab 
								
							 
						 
						
							
							
								
								Kernel: Implement TIOCSWINSZ for pseudo terminals  
							
							... 
							
							
							
							I have no idea how I had forgotten this 
							
						 
						
							2024-12-21 03:22:48 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								d7b4f54983 
								
							 
						 
						
							
							
								
								Kernel: Check Control Method Battery _STA bit 4  
							
							... 
							
							
							
							This bit indicates wheter the battery is actually present. 
							
						 
						
							2024-12-19 02:35:09 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								00b0dcd306 
								
							 
						 
						
							
							
								
								Kernel: Reorder ACPI initialization method calls  
							
							
							
						 
						
							2024-12-19 02:35:09 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								53c356a940 
								
							 
						 
						
							
							
								
								Kernel: Implement AML MatchOp  
							
							
							
						 
						
							2024-12-18 19:26:19 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								3a6cdfff45 
								
							 
						 
						
							
							
								
								Kernel: Fix ACPI namespace initialization  
							
							... 
							
							
							
							Now _REG, _STA, _INI are called in the order my laptop expects them to
be called. This was kinda weird because what uACPI was doing did not
work.
\_SB_.PCI0.LPC0.EC0_.BAT0._STA required \_SB_.PCI0.LPC0.EC0_._REG to be
called
\_SB_.PCI0.LPC0.EC0_._REG required \_SB_.PCI0._STA to be called
Now I call all the _REG methods of a device after calling _STA/_INI and
after performing the whole _STA/_INI sequence i call rest of missing
_REG functions 
							
						 
						
							2024-12-18 18:30:45 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								c26e347e91 
								
							 
						 
						
							
							
								
								Kernel: Fix AML FieldUnit conversion and NameString construction  
							
							
							
						 
						
							2024-12-18 18:29:04 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								1b94957b07 
								
							 
						 
						
							
							
								
								Kernel: Copy AML NameString base when moving it :)  
							
							
							
						 
						
							2024-12-18 18:28:16 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								4e364bd2f6 
								
							 
						 
						
							
							
								
								Kernel: Add support for ACPI Control Method Batteries  
							
							... 
							
							
							
							The implementation is kinda weird but it exposes some battery
information to userspace! 
							
						 
						
							2024-12-18 14:06:32 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								b9fe564d78 
								
							 
						 
						
							
							
								
								Kernel: Check for GCC when ignoring Wmaybe-uninitialized  
							
							
							
						 
						
							2024-12-18 01:45:36 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								437fa45ca2 
								
							 
						 
						
							
							
								
								Kernel: Add helper to find ACPI devices with EISA id  
							
							
							
						 
						
							2024-12-18 01:45:00 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								85e215650c 
								
							 
						 
						
							
							
								
								Kernel: Implement AML ToStringOp  
							
							
							
						 
						
							2024-12-18 01:44:33 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								7eb186dad4 
								
							 
						 
						
							
							
								
								Kernel: Add to_sv() helper for AML String  
							
							
							
						 
						
							2024-12-18 01:43:46 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								2259614640 
								
							 
						 
						
							
							
								
								Kernel: Remove unused function from ACPI namespace  
							
							
							
						 
						
							2024-12-18 01:43:04 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								869f4011a1 
								
							 
						 
						
							
							
								
								Kernel: Replace the old AML interpreter by a new, better one  
							
							... 
							
							
							
							The old AML interpreter was trash and did not follow value/reference
semantics at all. It was also super slow, one of my machines taking over
7 seconds to parse ACPI namespace and call _INI and _STA. 
							
						 
						
							2024-12-17 03:36:33 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								46d4e32510 
								
							 
						 
						
							
							
								
								Kenrel: Validate inode open mode on read/write syscalls  
							
							
							
						 
						
							2024-12-15 20:49:12 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								1815a913c3 
								
							 
						 
						
							
							
								
								Kernel: Remove unnecessary hash map lookups  
							
							
							
						 
						
							2024-12-15 20:47:40 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								12a37500b0 
								
							 
						 
						
							
							
								
								Kernel: Fix triple-fault in vitual tty  
							
							... 
							
							
							
							This was happening when printing non-utf8 data while having virtual tty
as the debug console. 
							
						 
						
							2024-12-09 03:35:51 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								2d0690ae2d 
								
							 
						 
						
							
							
								
								Kernel: Cleanup most of syscalls dealing with files  
							
							
							
						 
						
							2024-12-07 05:33:04 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								71a2d0971f 
								
							 
						 
						
							
							
								
								Kernel: Remove unnecessary reverse from VFS file search  
							
							
							
						 
						
							2024-12-07 01:41:23 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								3bf57e0748 
								
							 
						 
						
							
							
								
								Kernel: Add . and .. entries to /proc/<pid> directories  
							
							... 
							
							
							
							This allows to run `cd ..` in one of these directories 
							
						 
						
							2024-12-07 01:37:40 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								51b6329c86 
								
							 
						 
						
							
							
								
								Kernel: Make backspace \b and delete 0x7F  
							
							... 
							
							
							
							This is what `vim` seems to expect and imo makes way more sense. 
							
						 
						
							2024-12-05 17:34:37 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								72d9e4c1e7 
								
							 
						 
						
							
							
								
								Kernel: Remove accidental debug prints from fcntl syscall  
							
							
							
						 
						
							2024-12-05 17:34:32 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								49133dce48 
								
							 
						 
						
							
							
								
								Kernel: Make pipe check data every 100ms  
							
							... 
							
							
							
							This prevents dead lock if read-end does not detect data before blocking
why write-end already notified. 
							
						 
						
							2024-12-03 21:54:27 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								0a5aacfd87 
								
							 
						 
						
							
							
								
								Kernel: Allow open with O_CREAT bypass file permission checks  
							
							... 
							
							
							
							call to open(path, O_CREAT|O_EXCL|O_RDWR, 0444) should open file as
read-write although file is created as read-only on filesystem. 
							
						 
						
							2024-12-03 16:17:34 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								2dec3a6c95 
								
							 
						 
						
							
							
								
								Kernel: Add some sanity checks for existanse of threads  
							
							
							
						 
						
							2024-12-03 16:16:50 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								fcc2814199 
								
							 
						 
						
							
							
								
								Kernel: Remove process from alarm list after it dies  
							
							
							
						 
						
							2024-12-03 16:16:08 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								0fab7ad63b 
								
							 
						 
						
							
							
								
								Kernel: Fix SYS_FCNTL command handling :)  
							
							... 
							
							
							
							I had misunderstood how these work 
							
						 
						
							2024-12-03 16:12:26 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								e6a2f55a59 
								
							 
						 
						
							
							
								
								Kernel: Closing file backed mmap wont expand the file size  
							
							
							
						 
						
							2024-12-03 16:12:26 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								67e9ca56ac 
								
							 
						 
						
							
							
								
								Kernel: Create /dev/urandom -> /dev/random symlink  
							
							... 
							
							
							
							Most software uses urandom instead of random so this allows it work
normally. 
							
						 
						
							2024-12-03 16:12:26 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								713daf6cd3 
								
							 
						 
						
							
							
								
								Kernel/LibC: Add support for creating hardlinks  
							
							
							
						 
						
							2024-12-03 16:12:26 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								415b20f884 
								
							 
						 
						
							
							
								
								LibC: Remove errno EEXISTS  
							
							... 
							
							
							
							I don't know why I had added this. It doesn't seem to be a thing on
either POSIX or linux. This was literally equivalent to EXIST 
							
						 
						
							2024-12-02 20:13:38 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								d58ca5f37a 
								
							 
						 
						
							
							
								
								Kernel/LibC: Implement symlink{,at}  
							
							
							
						 
						
							2024-12-02 20:13:38 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								a10ca47657 
								
							 
						 
						
							
							
								
								Kernel/LibC: Implement {,f}statvfs  
							
							
							
						 
						
							2024-12-02 20:13:37 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								ad1f175a39 
								
							 
						 
						
							
							
								
								Kernel/LibC: Implement getppid  
							
							
							
						 
						
							2024-12-02 20:13:37 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								6ed1435aeb 
								
							 
						 
						
							
							
								
								Kernel/LibC: Implement tcgetpgrp  
							
							
							
						 
						
							2024-12-02 20:13:37 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								6346e288ad 
								
							 
						 
						
							
							
								
								LibC: Implement getrlimit  
							
							
							
						 
						
							2024-12-02 20:13:37 +02:00